Difference between revisions of "How Does VistA HL7 Determine which Code to execute?"

From VistApedia
Jump to: navigation, search
 
Line 20: Line 20:
  
  
{|border=0
+
{|border=1
 
!MSH
 
!MSH
!FIELD SEPARATOR<nowiki>!!</nowiki>
+
!FIELD SEPARATOR
!ENCODING CHARACTERS<nowiki>!!</nowiki>
+
!ENCODING CHARACTERS
!SENDING APPLICATION<nowiki>!!</nowiki>
+
!SENDING APPLICATION
!SENDING FACILITY<nowiki>!!</nowiki>
+
!SENDING FACILITY
!RECIEVING APPLICATION<nowiki>!!</nowiki>
+
!RECIEVING APPLICATION
!RECEIVING FACILITY<nowiki>!!</nowiki>
+
!RECEIVING FACILITY
 
!
 
!
 
|+
 
|+

Latest revision as of 11:59, 17 July 2018

On Sun, Jul 8, 2018 at 2:14 PM, Steve <solitary.wanderer52@gmail.com> wrote: When an HL7 messages comes into VistA, how does it determine which application will decode/execute it?

Answer: When an HL7 message comes into VistA, the MSH segment names the kind of message it is. The MSH segment will look something like this:

MSH

This is used to lookup an entry in the PROTOCOL File#101 which describes itself as:

This file contains the orderables and methods for accomplishing orders (protocols) within OE/RR.


The fields SENDING APPLICATION(101,770.1), TRANSACTION MESSAGE TYPE (101,770.3), EVENT TYPE(101,770.4) and VERSION ID(101,770.95) fields in the PROTOCOL are all used with the "AHL1" and "AHL21" cross-references to find the entry in the PROTOCOL File that handles that particular message.


For example, let's assume you have an HL7 message. The first line will be an MSH segment:


MSH FIELD SEPARATOR ENCODING CHARACTERS SENDING APPLICATION SENDING FACILITY RECIEVING APPLICATION RECEIVING FACILITY
MSH
|
!^~\&|
EXAMPLE SENDER