文章目录
- 第十九章 重要HL7操作场景
- `HL7`确认(`ACK`)模式
- HL7双确认序列
第十九章 重要HL7操作场景
本章描述了一些影响选择配置设置的关键HL7场景。
HL7确认(ACK)模式
HL7确认(ACK)消息确认目的地已收到HL7消息。负ACK (NACK)消息承认目的地知道传输,但没有捕获该消息。
下图说明了production如何支持HL7消息约定来发送ACK和NACK消息:

提交ACK——业务服务在提交保存从源接收到的数据的事务后,立即向源应用程序返回ACK。如果由于某种原因证明这是不可能的,它会发送一个NACK。业务操作可以设置为解释来自目标应用程序的ACK或NACK,但它不会将这些消息返回给源。
应用程序ACK——业务服务在通过业务操作从目标应用程序返回之前不会向源应用程序发送ACK或NACK。业务服务返回它从业务操作接收到的ACK或NACK。
*提交和应用程序ACK -第三种选择只在极少数情况下发生,即将ACK模式设置为MSH确定,并且MSH段在字段15和16中都包含需要ACK的值。建议避免这种情况。
可以使用这些确认约定发送三种主要类型的ACK消息内容之一:
Accept-消息到达,并被接受。- 拒绝-消息已到达,但已被拒绝。
- 错误-消息没有成功到达;再试一次。
使用以下配置设置来控制业务服务中的ACK处理:
Ack目标配置名称Ack Mode- 使用
ACK提交码 - 忽略入站
ACK - 添加
NACK ERR NACK错误码
使用以下业务操作的配置设置来控制ACK处理:
- 回复代码动作
- 得到的答复
HL7双确认序列
有些系统需要双重确认序列:立即的1字节ACK,随后是完整的ACK消息。一个这样的系统是双通道iSoft iCM应用程序。如果配置包括需要双重确认序列的客户机系统(如iCM),则必须设置成对的业务服务和业务操作,以使能够提供预期的ack。
提供了专门的业务主机类,可以使用这些类定义TCP和HTTP上的双重确认序列。
EnsLib.HL7.Service.TCPAckInService是一个专门的HL7业务服务,它代表配对的HL7 TCP业务操作接收ACK。它还取决于该合作伙伴代表其发送ACK。EnsLib.HL7.Operation.TCPAckOutOperation是一个专门的HL7 TCP业务操作,它代表配对的HL7 TCP业务服务发出ACK。它还取决于该合作伙伴代表其收集ACK。这些配置项中的每一个除了为其伙伴项所做的工作外,还发挥其通常的作用。EnsLib.HL7.Service.HTTPAckInService和EnsLib.HL7.Operation.HTTPAckOutOperation也可用。



















