$$STARTMSG(.HLMSG,IEN,.HEADER) |
This function begins the parsing of the message,
parsing the header and returning the individual values in the array HEADER().
|
VARIABLES |
TYPE |
VARIABLES DESCRIPTION |
HLMSG |
Output |
(pass by reference, required) This array is used by
the HL7 package to track the progress of parsing the message. The application
MUST NOT touch it!
|
IEN |
Input |
(REQUIRED)
Internal Entry Number (IEN) of the message in the HL7 MESSAGE ADMINISTRATION
file (#773)
|
HEADER |
Output |
(pass by reference, optional)
This array will return the results of parsing the message header. The array
subscripts are:
** Message Header, MSH Segment ** Sequence Description/Comment
HEADER("SEGMENT TYPE )= "MSH SEQ1 HEADER("FIELD SEPARATOR )
The field separator. SEQ2 The four other
encoding characters.
HEADER("COMPONENT SEPARATOR )
HEADER("SUBCOMPONENT SEPARATOR )
HEADER("REPETITION SEPARATOR )
HEADER("ESCAPE CHARACTER ) SEQ3 HEADER("SENDING APPLICATION )
SEQ4 HEADER("SENDING FACILITY ,1) First Component
HEADER("SENDING FACILITY ,2) Second Component
HEADER("SENDING FACILITY ,3) Third Component SEQ5
HEADER("RECEIVING APPLICATION ) SEQ6 HEADER("RECEIVING FACILITY ,1) First
Component
HEADER("RECEIVING FACILITY ,2) Second Component
HEADER("RECEIVING FACILITY ,3) Third Component SEQ7 HEADER("DT/TM OF
MESSAGE ) Converted to FileMan format. SEQ8 HEADER("SECURITY )
SEQ9 HEADER ("MESSAGE TYPE ) First Component
HEADER("EVENT ) Second Component
HEADER("MESSAGE STRUCTURE ) Third Component SEQ10 HEADER("MESSAGE
CONTROL ID ) Message control ID. SEQ11 HEADER("PROCESSING ID )
First Component
HEADER("PROCESSING MODE ) Second Component SEQ12 HEADER("VERSION
) SEQ14 HEADER("CONTINUATION POINTER ) MESSAGE CONTROL ID of the
message that this one continues. SEQ15 HEADER("ACCEPT ACK TYPE )
ACCEPT ACKNOWLEDGMENT TYPE, <AL or NE> SEQ16 HEADER("APP ACK TYPE )
APPLICATION ACKNOWLEDGMENT TYPE, <AL or NE> SEQ17 HEADER("COUNTRY )
COUNTRY CODE
** Message Header, BHS Segment ** Sequence Description/Comment
HEADER("SEGMENT TYPE )= "BHS SEQ1 HEADER("FIELD SEPARATOR )
The field separator. SEQ2 The four other
encoding characters.
HEADER("COMPONENT SEPARATOR )
HEADER("SUBCOMPONENT SEPARATOR )
HEADER("REPETITION SEPARATOR )
HEADER("ESCAPE CHARACTER ) SEQ3 HEADER("SENDING APPLICATION )
SEQ4 Sending Facility
HEADER("SENDING FACILITY ,1) First Component
HEADER("SENDING FACILITY ,2) Second Component
HEADER("SENDING FACILITY ,3) Third Component SEQ5
HEADER("RECEIVING APPLICATION ) SEQ6
Receiving Facility
HEADER("RECEIVING FACILITY ,1) First Component
HEADER("RECEIVING FACILITY ,2) Second Component
HEADER("RECEIVING FACILITY ,3) Third Component SEQ7 HEADER("DT/TM OF
MESSAGE ) Converted to FileMan Format. SEQ8 HEADER("SECURITY ) SEQ9
HEADER("BATCH NAME/ID/TYPE ) These fields are not defined by the standard
within the BHS segment, but they are needed and are encoded in SEQ 9 by the
VistA HL7 package:
HEADER("PROCESSING ID )
HEADER("ACCEPT ACK TYPE )
HEADER("APP ACK TYPE ) SEQ10 HEADER("BATCH COMMENT ) The VistA HL7
package, Version 1.6, Pre-HLO, currently requires that an application
designate a batch message as being of a particular message type, event type,
and version, and this information is encoded as components of SEQ10
HEADER("MESSAGE TYPE )
HEADER("EVENT )
HEADER("VERSION ) SEQ11 HEADER("BATCH CONTROL ID ) SEQ12
HEADER("REFERENCE BATCH CONTROL ID )
|
$$STARTMSG |
Output |
Function returns 1 on success, 0 on failure. Failure
would indicate that the message was not found.
|
|
$$NEXTSEG(.HLMSG,.SEGMENT) |
This function advances parsing to the next segment.
|
VARIABLES |
TYPE |
VARIABLES DESCRIPTION |
$$NEXTSEG |
Output |
Function returns 1 on success, 0 if there are no more
segments in this message. For batch messages, a return value of 0 does not
preclude the possibility that there are additional individual messages within
the batch.
|
HLMSG |
Both |
(pass by reference, required)
This array is used by the HL7 package to track the current position in the
message. The application MUST NOT touch it!
|
SEGMENT |
Output |
(pass by reference, required)
The segment is returned in this array. SEGMENT("SEGMENT TYPE") is returned
with the 3 letter HL7 segment type that always begins a segment.
The structure is not further described here because it should not be accessed
directly by the application developer. Use $$GET to obtain individual segment
values. As a shortcut, $$GET^HLOPRS(0) may be used to return the segment
type.
|
|
$$NEXTMSG(.HLMSG,.MSH) |
Advances to the next message within the batch, with
the MSH segment returned.
|
VARIABLES |
TYPE |
VARIABLES DESCRIPTION |
$$NEXTMSG |
Output |
Function returns 1 on success, 0 if there are no more
messages.
|
HLMSG |
Both |
(pass by reference, required)
This array is used by the HL7 package to track the current position in the
message. The application MUST NOT touch it!
|
MSH |
Output |
(pass by reference, required)
This array returns the MSH segement of the next message in the batch in the
same format as the $$STARTMSG API.
|
|