Working with TCP/IP HL7 Collaborations

HL7 V3 Standard Inbound Message Mode Data Flow (For Deferred Mode of ACK Process) — Part 1

A HL7 V3 message triggers an inbound Collaboration received from an external system or an outbound HL7 V3 Client. Execute the following Collaboration calls of the HL7 V3 User Collaboration Rule receive().

The receive method is the entry point to the HL7 V3 User Collaboration, with the following signature:

public void

receive(com.stc.connector.appconn.tcpip.hl7.HL7ServerApplication input,

com.stc.connectors.jms.JMS otdJMS_DATA,

xsd.hl7v3.PRPA_IN403001UV01.PRPA_IN403001UV01_ otd_PRPA_IN403001UV01_1

xsd.hl7v3.MCCI_IN000004UV01.MCCI_IN000004UV01_ otd_MCCI_IN000004UV01

xsd.hl7v3.MCCI_IN000006UV01.MCCI_IN000006UV01_ otd_MCCI_IN000006UV01

xsd.hl7v3.MCCI_IN000007UV01.MCCI_IN000007UV01_ otd_MCCI_IN000007UV01

com.stc.connectors.jms.JMS otdJMS_APPACK

otdHL7_ACK_1,com.stc.connectors.jms.JMS otdJMS_JOURNAL,

com.stc.connectors.jms.JMS otdJMS_ERROR) throws Throwable.

Once the message is received, the Collaboration determines whether the message needs to be validated. The HL7 V3 message is then validated, making sure that the message structure is correct. Various fields in the Transmission Wrapper of the message are also validated, such as Version Code, Processing Code, Processing Mode Code, and Interaction ID. If these fields do not match the configuration, a NAK is returned.

If sequence numbering is enabled the Collaboration checks to see if the messages sequence number is valid. If the sequence number is not valid, the adapter sends a NAK. The validated HL7 V3 message moves on to processInitialHandshake().

Figure 1–21 Deferred Mode of ACK Process — Part 1

Deferred Mode of ACK Process — Part 1