5

我正在尝试编写一个 HL7 消息解析器,它将指定的确认发送回消息传递引擎,以便我的应用程序可以接收下一条消息。

发送消息的接口引擎称为 VISTA(有人曾经使用过它吗?)有人告诉我,如果 MSH 字段 15 中有值,它希望收到“确认 ACK”。在所有消息中我目前正在接收,我得到的值是“AL”。

我基本上已经将我的应用程序设置为将 TCP 消息发送到可以在应用程序启动之前设置的主机名/IP:端口号。

如果可能的话,有人可以提供一个示例 ACK 消息(当然没有敏感数据)和包装消息的非空白字符吗?

我想确保我知道我需要将什么发送回发送应用程序。

4

2 回答 2

7

经过我自己的一些进一步研究,以及对这篇文章的回复的帮助,我发现发送应用程序需要包含以下项目才能接受我的 ACK 并转到下一条消息。

ACK 必须包含以下内容:

MSH|^~\&|Receiving App|Receiving App ID|Sending App|Sending App ID|DateTime of Message||"ACK"|Message Control ID|Processing ID|Version ID
MSA|AE <or> AR <or> AA|Message Control ID (MSH 9 from the sent message)
ERR| This particular segment is not required by the sending application

我遇到的问题与我的发送和接收应用程序 ID 和名称有关。

谢谢您的帮助!

于 2010-07-01T17:48:38.267 回答
3

我没有使用 VISTA,我目前唯一的设置是返回一个错误 ACK,因为我现在无法调试一些应用程序问题,但如果它有帮助,这里是错误 ACK:

MSH|^~\&|||||20100630130105.496-0500||ACK|20||2.3
MSA|AE|H20091222063637.9834
ERR|^^^207&Application Internal Error&HL70357

请注意,这是 HL7 v2.3 - 其他版本的格式可能不同。

于 2010-06-30T17:04:17.193 回答