Javascript Mirth-在一个轮询间隔内发送多个HL7消息

Javascript Mirth-在一个轮询间隔内发送多个HL7消息,javascript,hl7,mirth,Javascript,Hl7,Mirth,在Mirth中,我有一个JavaScript阅读器连接器,在源代码中,我有一个对存储过程的调用。此过程返回多行。是否有任何方法编写脚本,以便针对过程返回的每一行生成消息并适当发送?我已经知道的另一个选项是编写脚本,只生成一条消息,并将轮询间隔设置为每100ms左右,此外还要更改过程。任何帮助或见解都将不胜感激 var procedure = 'exec dbo.mystoredprocedure'; objresult = dbConn.executeCachedQuery(procedure)

在Mirth中,我有一个JavaScript阅读器连接器,在源代码中,我有一个对存储过程的调用。此过程返回多行。是否有任何方法编写脚本,以便针对过程返回的每一行生成消息并适当发送?我已经知道的另一个选项是编写脚本,只生成一条消息,并将轮询间隔设置为每100ms左右,此外还要更改过程。任何帮助或见解都将不胜感激

var procedure = 'exec dbo.mystoredprocedure';
objresult = dbConn.executeCachedQuery(procedure);
while (objresult.next())
{
    var msg = <HL7Message/>;
    msg.MSH['MSH.1'] = '|';
    msg.MSH['MSH.2'] = '^~\\&';
    msg.MSH['MSH.3'] = 'MedicalRecords';
    msg.MSH['MSH.4'] = 'Application';
    msg.MSH['MSH.5'] = 'Test';
    msg.MSH['MSH.6'] = 'Something';
    msg.MSH['MSH.7'] = DateUtil.getCurrentDate("yyyyMMddHHmmssSSS");
    msg.MSH['MSH.8'] = '';
    msg.MSH['MSH.9']['MSH.9.1'] = 'ADT';
    msg.MSH['MSH.9']['MSH.9.2'] = 'A08';
    msg.MSH['MSH.10'] = DateUtil.getCurrentDate("yyyyMMddHHmmssSSS");
    msg.MSH['MSH.11'] = 'P';
    msg.MSH['MSH.12'] = '2.5';
    .
    .
    .
    .
  return msg;
}
var procedure='exec dbo.mystoredprocedure';
objresult=dbConn.executeCachedQuery(过程);
while(objresult.next())
{
var msg=;
msg.MSH['MSH.1']='|';
msg.MSH['MSH.2']='^~\\&';
msg.MSH['MSH.3']='MedicalRecords';
msg.MSH['MSH.4']='Application';
msg.MSH['MSH.5']='Test';
msg.MSH['MSH.6']='Something';
msg.MSH['MSH.7']=DateUtil.getCurrentDate(“yyyymmddhhmmssss”);
msg.MSH['MSH.8']='';
msg.MSH['MSH.9']['MSH.9.1']='ADT';
msg.MSH['MSH.9']['MSH.9.2']='A08';
msg.MSH['MSH.10']=DateUtil.getCurrentDate(“yyyymmddhhmmssss”);
msg.MSH['MSH.11']='P';
msg.MSH['MSH.12']='2.5';
.
.
.
.
返回味精;
}

是的,您可以返回包含多条消息的列表。列表中的每个元素都将作为单独的消息发送到频道。

非常感谢!我做了一些挖掘,找到了我要找的东西

var messages = new java.util.ArrayList();
messages.add(message1);
messages.add(message2);
return messages;