Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2008/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mirth中的Json解析或Mirth中的Json解析或HL7到Mirth中的Json解析_Json_Mirth - Fatal编程技术网

Mirth中的Json解析或Mirth中的Json解析或HL7到Mirth中的Json解析

Mirth中的Json解析或Mirth中的Json解析或HL7到Mirth中的Json解析,json,mirth,Json,Mirth,我想使用JSON作为mirth通道的输入,并将详细信息保存在db中或创建HL7消息 简而言之,输入为JSON,将其解析为任意格式输出。var object={}; //从HL7消息创建JSON对象。 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'][

我想使用JSON作为mirth通道的输入,并将详细信息保存在db中或创建HL7消息

简而言之,输入为JSON,将其解析为任意格式输出。

var object={};
//从HL7消息创建JSON对象。
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();
//从JSON对象创建字符串。
var objjson=JSON.stringify(对象);
logger.info(objjson);
//从Json字符串创建Json对象。
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|

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

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

根据@Debugger,如果有人想要json文件作为输入/源,请尝试此解决方案

欢乐频道

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

  • {"mrn":"1001","firstName":"COLLEEN","lastName":"OHALLAHAN","dob":"19850704","ssn":"123456789"}
    
  • 出站数据类型Javascript

  • {"mrn":"1001","firstName":"COLLEEN","lastName":"OHALLAHAN","dob":"19850704","ssn":"123456789"}
    
将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
输出:

{"mrn":"1001","firstName":"COLLEEN","lastName":"OHALLAHAN","dob":"19850704","ssn":"123456789"}
logger.info(objJson.firstName);

COLLEEN
注意:

{"mrn":"1001","firstName":"COLLEEN","lastName":"OHALLAHAN","dob":"19850704","ssn":"123456789"}
logger.info(objJson.firstName);

COLLEEN

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

我正在分析此页面,并找到了您的代码Rikin patel。实际上,当您创建并显示对象时,它可能在控制台中显示为
JSON
数据,当您查看输出时,它将是正常的
XML
驱动格式。但当您使用msg时,请按以下方式替换对象:

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

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

不要设置msg变量,因为这是包含XML类型格式的系统变量。如果要使用
JSON
对象,则创建新的全局/局部变量来设置
JSON
对象。还有一件事,您的“object”变量应该是
JSON
object