Json解析了Mirth或Json in Mirth或HL7到JSON in Mirth

问题描述 投票:5回答:4

我想使用JSON作为mirth频道的输入并输出类似于详细信息保存在db或Create HL7消息中。

简而言之,输入为JSON解析它并以任何格式输出。

json mirth
4个回答
4
投票
var object = {};

//Create JSON Object from HL7 Message.
object.mrn = msg['PID']['PID.3']['PID.3.1'].toString();
object.firstName = msg['PID']['PID.5']['PID.5.2'].toString();
object.lastName = msg['PID']['PID.5']['PID.5.1'].toString();
object.dob = msg['PID']['PID.7']['PID.7.1'].toString();
object.ssn = msg['PID']['PID.19']['PID.19.1'].toString();

//Create string from JSON Object.
var objjson = JSON.stringify(object);
logger.info(objjson);

//Create Json Object From JSON string.
var tt = JSON.parse(objjson);

产量

{"mrn":"1001","firstName":"COLLEEN","lastName":"OHALLAHAN","dob":"19850704","ssn":"123456789"}

HL7消息样本

MSH|^~\&|ADT1|SHM|SHMADT|SHM|200812091126|SECURITY|ADT^A01^ADT_A01|MSG00001|P|2.5|
EVN|A01|200812091126||
PID|1|1001|1001^5^M11^ADT1^MR^SHM||OHALLAHAN^COLLEEN^^||19850704|F||2106-3|1200 N ELM STREET^^NEWPORT BEACH^CA^92660-1020^US^H|OC|(949) 555-1234|(949) 555-5678||S||PATID1001^2^M10^ADT1^AN^A|123456789|U1234567^CA|
NK1|1|OHALLAHAN^BRITTANY^M|SIS^SISTER||||N^NEXT-OF-KIN
PV1|1|I|2000^2012^01||||001122^ZOIDBERG^JOHN^|||SUR||||1|A0|

4
投票

我正在解析这个页面,并找到了你的代码Rikin patel。实际上,当您创建对象并显示它时,它可能会作为JSON数据出现在控制台中,当您查看输出时,它将是正常的XML驱动格式。但是当您使用msg时,而不是对象,如下所示:

msg = JSON.stringify(object); //converting msg into JSON object
logger.info("json data:" + msg); //displaying the JSOn message

您将在输出中找到要修改的数据。


2
投票

如Per @Debugger,如果有人想要json文件作为输入/源,那么试试这个解决方案。

欢乐通道

  • 入站数据类型为分隔文本
  • 出站数据类型为Javascript

制作JavaScript类型的目标并在Transformer中编写以下代码:

//Create Json Object From JSON string.
var objJson = JSON.parse(messageObject.getRawData());

logger.info(objJson.propertyName);

输入:

{"mrn":"1001","firstName":"COLLEEN","lastName":"OHALLAHAN","dob":"19850704","ssn":"123456789"}

输出:

logger.info(objJson.firstName);

COLLEEN

注意:

使用connectorMessage.getRawData()而不是messageObject.getRawData()用于Mirth 3.0+版本。


0
投票

要在mirth通道中接收JSON作为输入,请将入站数据类型设置为分隔文本,并在通道预处理器中从接收的消息创建Json对象并返回json对象。

使用json对象获取详细信息并存储在某些变量中,并使用DB writer保存在db中。为了构建hl7消息,mirth提供了一些函数,比如createSegment(seg name,index),可以轻松构建自己的hl7消息。

© www.soinside.com 2019 - 2024. All rights reserved.