1

我们的许多 Biztalk 用例都涉及简单地将 HL7 2.x 消息从一个系统映射和路由到另一个系统。实现映射并将它们与发送/接收端口相关联通常很简单,但我们还需要在发送端进行一些基于内容的过滤。

例如,如果发送设施是任意 200 个设施(我们组织中可能有 1000 个设施),我们可能只想向系统 X 发送 ADT A04 和 ADT A08 消息,但系统 Y 需要 ADT A04、A05、A8对于一套完全不同的设施,仅适用于肾病患者。

因为我们只是在这里路由消息而不是真正管理业务流程,所以在这里使用编排来调用业务规则引擎有点矫枉过正,特别是考虑到我们可能需要为每种 ADT 类型单独编排因为模式是如何工作的。是否可以在不使用编排的情况下实现这样的过滤规则?发送端口的过滤器功能对于我们需要的东西来说看起来有点过于初级,但同时我宁愿不开发和管理编排。

4

2 回答 2

3

您也许可以使用属性模式来做到这一点......

您需要创建一个属性架构并包括要用于路由的属性(来自其他架构)。部署架构后,这些属性将可用作发送端口中的过滤器。从这里开始,您应该可以在某处找到示例...

于 2012-06-28T07:28:41.867 回答
0

正如其他人建议的那样,您可以使用自定义管道组件来调用业务规则引擎。

与其尝试创建自己的,不如说已经有一个可用的开源版本,称为BizTalk 业务规则引擎管道框架

通过从管道调用 BRE,您可以创建复杂的规则,然后设置简单的上下文属性,您可以在这些属性上路由您的消息。

全面披露:当我们都在同一家公司时,我曾与该框架的作者一起工作。

于 2016-07-22T03:32:00.873 回答