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

Mirth - Send multiple HL7 messages during one polling interval

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

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;
}

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

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

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