第十四章 定义 HL7 的路由规则集
2023-08-06 本文已影响0人
Cache技术分享
第十四章 配置Production - 定义 HL7 的路由规则集
为 HL7
接口创建路由规则集时,目标是根据源消息中找到的段告诉production
如何处理源消息。有时找到哪些片段很重要;有时,在这些细分中找到哪些值很重要。
在普通规则集中,每个规则都会向调用该规则集的业务流程返回一个值。在路由规则集中,规则通常将 HL7
消息定向到目的地,并可能在发送之前转换 HL7 消息。
创建规则集时,不要使用保留的包名称
- 当使用业务规则向导创建新的
HL7
路由流程时, 会创建一个新的空路由规则集来伴随新的路由流程。其信息表包含以下值:
-
Package Name
包名称 - 包含production
类的包。例如,如果使用向导将路由进程添加到名为TestRule.MyTest
的产品中,则关联的路由规则的包名称为:TestRule
-
Rule Name
规则名称 - 在向导中选择的简单路由规则名称,例如:MyRule
包名称和规则名称的组合在命名空间内唯一标识规则。任何规则定义的全名是由点 (.
) 连接的包名称和规则名称,如下所示:TestRule.MyRule
配置 HL7
路由流程时,该全名(而不是规则名称)是 BusinessRuleName
字段中使用的正确值。业务流程向导会自动进行设置。
-
Routing Engine Class
路由引擎类 — 向导中的默认路由器类;不要改变它:EnsLib.HL7.MsgRouter.RoutingEngine
- 还可以输入其他字段以用于自己的规则报告目的:
-
Report Group
报告组 - 用于对报告规则进行分组的值 -
Report Name
报告名称 - 规则报告组的显示值 -
Short Description
简短描述 - 此规则定义的可选简短描述
- 创建新规则后,可以向其中添加条件和操作。
- 条件首先评估
AND
运算符,然后评估OR
。 - 条件可以引用
HL7
消息对象的属性。在Conditions
中,特殊变量Document
表示HL7
消息对象,如以下示例所示。对于HL7
批处理文档,可以使用特殊变量Document.Parent
来表示父消息对象。
Document.Name
Document.Parent.DocType
Document.{PIDgrp.PV1grp.PV1:18}
Document.{PIDgrp.PID:PatientName.familylastname}
Document.{ORCgrp(1).OBRuniongrp.OBRunion.OBR:4.3}
注意:为了与过去的版本兼容,支持特殊变量 HL7
和 HL7.Parent
作为 Document
和 Document.Parent
的替代变量。
点将文档变量与属性名称分隔开。这个名字可能是:
-
任何类属性:
DocType
、TypeCategory
、BuildMapStatus
或Name
。 -
虚拟属性,使用以下任一约定引用:
- Curly brackets
{segmentPath:field}
- Square brackets
[segmentName:field]
- Round brackets or parentheses
(multi-valued-property-path)
- Angle brackets
<context|expression>
- 完成接下来几个主题中的说明,以创建路由规则集所需的任何源、目标或转换项。这些项目可能是:
-
HL7
业务服务,用于将消息路由到规则 -
DTL
数据转换,在发送消息之前转换消息 -
HL7
业务操作,将消息路由到外部应用程序
-HL7
路由进程可以是源或目标
创建项目时,返回到消息路由规则编辑器以将它们添加到规则定义的相应字段中。
返回Production
配置页面上的图表。选择对应的HL7路由进程。在 BusinessRuleName
字段中,输入新路由规则集的全名。