【问题标题】:Mirth channel XML : how to read multiple values from inside of an elementsMirth channel XML:如何从元素内部读取多个值
【发布时间】:2021-10-22 02:43:39
【问题描述】:

如何从 Mirth Channel XML 的元素中读取值列表?如何读取多个相同类型的标签并分配给出站 XML 消息模板。

<patient>

<result>    
  <name>Name-1</name>
</result>


 <result>    
  <name>Name-2</name>
 </result>

<patient>

如果为 Names 定义了相同的值,则只需执行 msg['patient']['result']['name'] 将返回该值。但是,如果名称返回多个不同的名称,如何获取值?如何在同一个 XML 中迭代和显示?我是第一次做 Mirth,感谢任何帮助。

我看到了一个例子。

var nameLen = msg['result']['name'].length();
for(i=0;i<nameLen;i++){
// Your Mapping Logic
logger.debug(msg['result']['name'][i].toString());
}

但它不完整,如何在 Mirth Connect 中使用出站消息 XML 模板分配此 var 和循环?

请我在这方面需要任何人的帮助来解决这个问题。

谢谢

【问题讨论】:

  • 只是为了确保 - 您可以编辑您的问题并在示例 xml 中添加第二个 &lt;patient&gt;(带有 Name-3 等)并显示您的预期输出吗?
  • 我不会放第二个 因为那是根节点,在这种情况下它没有意义,但您应该共享您的出站模板和预期的输出,如以及您尝试过的任何无效操作。
  • stackoverflow.com/questions/68534547/…。如果您在查看后仍有疑问,则需要完善您的问题。

标签: javascript xml-parsing mirth


【解决方案1】:

对于 HL7 v3 消息,您需要在目标的 Transformers 选项卡中移动,并将出站模板定义为 HL7 v3。

当您循环获取一个值时,如果您打算将该值进一步用于出站模板,您可以通过将其放入 channelMap 来使用它,只需将其放入:

channelMap.put("name_of_your_key", "your_value");

并在出站模板中检索它:

channelMap.get("name_of_your_key");

【讨论】:

  • 欢迎来到 Stack Overflow!请花点时间阅读editing help 中的help center。 Stack Overflow 上的格式与其他网站不同。
猜你喜欢
  • 2018-04-24
  • 2013-10-06
  • 2013-03-22
  • 2020-07-31
  • 2021-09-07
  • 1970-01-01
  • 1970-01-01
  • 2021-06-19
  • 2021-02-28
相关资源
最近更新 更多