Mirth:入站消息模板与通道源类型不同

时间:2009-06-03 20:35:42

标签: hl7 mirth

问题是入站消息模板期望的类型与我想要指定或使用的类型不同。要求是将SINGLE通道转换为HL7 v2到v3,调用Web服务,然后转换SOAP生成的XML,并将其转换为HL7 v2.x并将其发送回原始调用者。 必须异步完成

设置: 考虑一下Mirth频道的情况:

  • Source是LLP监听器。类型是HL7 v2.x.发件人是HCIS(医疗保健信息系统)。
  • Source Transformer,与手头的问题无关。
  • 4个目的地(按顺序):

    • Javascript Writer - 调用代码模板来完成一些数据库工作。
    • SOAP Sender - 调用返回HL7 v3的Web服务。
    • Javascript Writer - 包含少数变形金刚数据库编写器调用代码模板。 问题出在这里。
    • Javascript Writer - 再次调用代码模板。
  • PostProcessor生成自定义确认以发送回HCIS。

问题: 入站消息模板需要HL7 v2.x,因为它从Source继承了数据类型。我需要将HL7 v3模板映射到出站消息模板。出站模板工作正常,因为它不受任何限制。

 tmp['PID']['PID.5']['PID.5.1'] = msg['controlActProcess']['subject']['target']['identifiedPerson']['name']['family'].toString();

我已在另一个通道中测试了此设置,其中HL7 v3作为传入数据类型,并且运行正常。

问题:  如何强制Mirth将我的入站消息模板识别为HL7 v3,而不是继承通道的传入数据类型?

2 个答案:

答案 0 :(得分:3)

有点晚了,我知道,但是你可以把它分成2个频道:一个HL7 v2.x到一个频道编写器,然后另一个设置为HL7 v3.x的频道阅读器?

如果你已经解决了这个问题,我很想知道如何解决这个问题。

答案 1 :(得分:1)

好的,我在你发布这个问题后的两年半时间写了这篇文章,所以现在你已经以某种方式处理了它。但是,为了提供信息,这是一个回复。

您有一个输出连接器,其输入为HL7 v2.x.您需要XML格式的输入数据(HL7 v3是XML),以便您可以使用E4X对其进行操作。

解决方案:Mirth Connect会自动处理此问题。只要连接器有过滤器或变换器,Mirth就会将输入消息转换为XML。你说这个连接器有变换器,所以你应该可以使用HL7输入消息的XML表示。

如果您使用的是没有过滤器且没有变换器的通道,则可以通过添加条件始终为真的过滤器来强制进行转换。