任务是将 XML 对象从 Channel-A 发送到 Channel-B
<MyMessage>
<ID>42</ID>
<hl7v2>
MSH|^~\&|LAB|....
PID|1|....
</hl7v2>
</MyMessage>
渠道沟通的步骤:
- 在 Channel-B 的源转换器中,提取 HL7v2 内容
- 用提取的内容覆盖 Channel-B 中的当前 msg 对象
- 继续在其他通道-B 源变压器中,并期望
msg['PID']['PID.5']
正常参考。
好消息是我可以将 HL7v2 的“有效负载”提取到一个变量中。问题或困难在于重置msg
对象或任何其他能够按预期引用 HL7 属性的对象。
当我用 . 创建一个新变量时SerializerFactory.getHL7Serializer
,它会用标签<HL7Message>
.
channelMap.put('MessageID', msg['ID']); //successful
channelMap.put('v2payload',msg['HL7v2']); //also looks good
var v2Msg = SerializerFactory.getHL7Serializer(false,false,true).toXML(msg['HL7v2']);
channelMap.put('v2Msg', v2Msg );
问题:您对如何覆盖 msg 对象有任何建议吗?
我怎样才能开始这样引用味精:
msg['PID']['PID.5']
现在的情况
- 接收通道的输入类型是 XML
- 需要从该 XML 对象中提取所有属性;ID 是稍后在目标中使用的数据库 PK。