MDCPHL7A ;HINES OIFO/BJ - CliO HL7 Handler/validator;09 Aug 2006
Source file <MDCPHL7A.m>
| action | A | extended action | Ea | event driver | Ed | subscriber | Su | protocol | O | limited protocol | LP | run routine | RR | broker | B | edit | E | server | Se | P | screenman | SM | inquire | I |
| Package | Total | Caller Graph |
|---|---|---|
| Clinical Procedures | 1 | MDHL Device Client |
| Kernel | 1 | ^ORD(101 |
| Name | Comments | DBIA/ICR reference |
|---|---|---|
| EN | ;
; Main processing routine used by VistA HL7 subsystem ; Parameters - ; Covert (preset local variables) - ; See HL*1.6*56 guide, pg 9-4. ; HLMTIENS - The message ID ; HLNODE - Current message segment: set by HLNEXT; ; HLNODE(N) - Continuation nodes for current segment. ; HLQUIT - will be less than 1 if there are no more nodes. |
|
| LOG(MDCPINST,MDCPORD,MDCPDTTM,MDCPHL7,MDCPHDR,MDCPLOC) | ; We need to make an entry in 704.002 for this message.
; Parameters - ; Overt: ; MDCPINST - The name of the instrument sending the message. ; MDCPORD - The order identifier returned from the instrument. ; MDCPDTTM - The date/time of the observation. ; MDCPHL7- The HL7 message id in file 773. ; MDCPHDR- The ID of the HL7 message in file 772 (for the MSH segment) ; MDCPLOC- The reported location of the patient in this HL7 message |
|
| VALPID(MDCPIEN,MDCPID) | ; Validate an HL7 PID segment.
|
|
| VALMAP(MDCPIEN,MDCPINST) | ; Validate an incoming device to a mapping table
; Purpose - ; This line tag will take an incoming HL7 Sending Application and ensure ; that it has a mapping table in the TERM_MAPPING_TABLE file (704.108) ; Compare is done on field SOURCE_ID (#.21) via the 'SOURCE' x-ref |
|
| VALLOC(MDCPIEN,MDCPLOC) | ; Validate an incoming location to File 44
|
|
| BLDARRY(MDCPVAL,MDCPSEP) | ; Build an array
|
|
| HL72FMDT(MDHL7) | ; Convert an HL7 Date/Time to Fileman
; Check for YYYYMMDDhhmmss pattern first |
| Name | Field # of Occurrence |
|---|---|
| $$FIND1^DIC | VALPID+54, VALMAP+7, VALLOC+2 |
| FILE^DIE | VALPID+59, VALMAP+10, VALLOC+5 |
| UPDATE^DIE | LOG+23 |
| $$GET1^DIQ | VALMAP+9 |
| $$FMDATE^HLFNC | VALPID+47 |
| GENACK^HLMA1 | EN+61 |
| $$DONTPURG^HLUTIL | EN+36 |
| GETGUID^MDCLIO1 | LOG+15, LOG+16 |
| UPDATERP^MDCPHL7B | EN+54 |
| UPDRSN^MDCPHL7B | EN+36, EN+42, EN+47, VALPID+45 |
| $$FMADD^XLFDT | VALPID+48, HL72FMDT+6, HL72FMDT+8 |
| $$FMNAME^XLFNAME | VALPID+52 |
| $$GET^XPAR | EN+29 |
| HL7 Protocol Name | Call Tags |
|---|---|
| MDHL Device Client | EN |
| FileNo | Call Tags |
|---|---|
| ^DPT - [#2] | FIND1^DIC |
| ^SC - [#44] | FIND1^DIC |
| ^MDC(704.108 - [#704.108] | FIND1^DIC, GET1^DIQ |
| Name | Line Occurrences (* Changed, ! Killed) |
|---|---|
| ^MDC(704.002 - [#704.002] | LOG+16 |
| >> | Not killed explicitly |
| * | Changed |
| ! | Killed |
| ~ | Newed |
| Name | Field # of Occurrence |
|---|---|
| >> HL("APAT" | EN+58 |
| >> HL("ECH" | EN+26, VALPID+39, VALPID+52 |
| >> HL("EID" | EN+61 |
| >> HL("EIDS" | EN+61 |
| >> HL("FS" | EN+17, VALPID+38, VALPID+47, VALPID+50, VALPID+52 |
| >> HL("MID" | EN+60 |
| >> HLA("HLA" | EN+60* |
| >> HLMTIEN | EN+32 |
| >> HLMTIENS | EN+32, EN+61 |
| >> HLNEXT | EN+18 |
| >> HLNODE | EN+19, EN+20, EN+21 |
| >> HLQUIT | EN+18 |
| >> HLREC("FS" | EN+16 |
| I | BLDARRY+19~*, BLDARRY+21*, BLDARRY+22 |
| J | BLDARRY+19~* |
| MDCPDFN | VALPID+36~, VALPID+54*, VALPID+55, VALPID+57 |
| MDCPDOB | VALPID+36~, VALPID+47*, VALPID+48*, VALPID+49*, VALPID+53, VALPID+58 |
| MDCPDTTM | EN+15~, EN+24*, EN+32, LOG~, LOG+21 |
| MDCPER | LOG+13~, LOG+24 |
| >> MDCPERR | EN+54 |
| MDCPFDA | LOG+13~, VALPID+36~, VALMAP+6~, VALLOC+1~ |
| MDCPFDA( | LOG+17*, LOG+18*, LOG+19*, LOG+20*, LOG+21*, LOG+22*, VALPID+57*, VALPID+58*, VALMAP+8*, VALMAP+9* , VALLOC+3* |
| MDCPFS | EN+15~, EN+16*, EN+17*, EN+19, EN+20, EN+21, EN+23, EN+24, EN+25, EN+60 |
| MDCPHDR | LOG~, LOG+19 |
| MDCPHL7 | LOG~, LOG+20 |
| MDCPID | EN+15~, EN+20*, EN+41, LOG+13~, LOG+15, LOG+16, LOG+17, VALPID~, VALPID+38, VALPID+47 , VALPID+50, VALPID+52 |
| MDCPIEN | EN+15~, EN+32*, EN+36, EN+41, EN+42, EN+46, EN+47, EN+51, EN+54, VALPID~ , VALPID+45, VALPID+57, VALPID+58, VALMAP~, VALMAP+8, VALMAP+9, VALLOC~, VALLOC+3 |
| MDCPINS1 | LOG+13~ |
| MDCPINS2 | LOG+13~ |
| MDCPINST | EN+15~, EN+23*, EN+32, EN+46, LOG~, VALMAP~, VALMAP+7, VALMAP+8 |
| MDCPIX | VALPID+36~, VALPID+44*, VALPID+45 |
| MDCPLOC | EN+15~, EN+25*, EN+26*, EN+29, EN+32, EN+51, LOG~, LOG+22, VALLOC~, VALLOC+2 , VALLOC+3 |
| MDCPMSG | EN+59~, EN+64*, EN+67* |
| MDCPMSH | EN+15~, EN+19*, EN+23, EN+24 |
| MDCPNAME | VALPID+36~, VALPID+52*, VALPID+53, VALPID+58 |
| MDCPORD | EN+32, LOG~ |
| MDCPRSLT | EN+59~, EN+61, EN+62, EN+64, LOG+13~ |
| MDCPRSLT(1 | LOG+24 |
| MDCPSCRN | VALPID+36~, VALPID+53*, VALPID+54 |
| MDCPSEP | BLDARRY~, BLDARRY+21 |
| MDCPSEX | VALPID+36~, VALPID+50*, VALPID+53, VALPID+58 |
| MDCPSSN | VALPID+36~, VALPID+38*, VALPID+39*, VALPID+44, VALPID+54, VALPID+58 |
| MDCPSTAT | EN+38*, EN+43*, EN+48*, EN+54, EN+63*, EN+66*, VALPID+36~, VALPID+55*, VALPID+60 |
| MDCPSTIN | LOG+13~ |
| MDCPTEMP | BLDARRY+19~, BLDARRY+20*, BLDARRY+21 |
| MDCPTMP | EN+36, EN+42, EN+47, VALPID+36~, VALPID+45 |
| MDCPV1 | EN+15~, EN+21*, EN+25 |
| MDCPVAL | BLDARRY~, BLDARRY+20 |
| MDCPVAL( | BLDARRY+21*, BLDARRY+22! |
| MDHL7 | HL72FMDT~, HL72FMDT+2, HL72FMDT+3, HL72FMDT+4, HL72FMDT+8 |
| >> MDRET | HL72FMDT+3*, HL72FMDT+4*, HL72FMDT+6*, HL72FMDT+8*, HL72FMDT+9 |
| MDVALID | VALMAP+6~, VALMAP+7*, VALMAP+9, VALMAP+11, VALLOC+1~, VALLOC+2* |
| U | EN+62, EN+64 |