ALPBHL1U ;OIFO-DALLAS MW,SED,KC -HL7 MESSAGE SEGMENT PARSER AND UPDATE ;2/6/21 15:41
Source file <ALPBHL1U.m>
Package | Total | Call Graph |
---|---|---|
Barcode Medication Administration | 2 | $$UNESC^ALPBGEN ERRBLD^ALPBUTL1 |
Health Level Seven | 1 | $$FMDATE^HLFNC |
VA FileMan | 1 | (FILE,UPDATE,WP)^DIE |
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 |
---|---|---|
Barcode Medication Administration | 1 | ALPBHL1 |
Name | Comments | DBIA/ICR reference |
---|---|---|
AL1(IEN,DATA,FS,CS,ERR) | ; process AL1 (allergies) segment...
|
|
ORC(IEN,OIEN,DATA,MLOG,FS,CS,ERR) | ; process ORC (common order) segment...
; MLOG = if 1 then this is an ORC segment with a Med Log update ; if 0 then this is a common order update |
|
PV1(IEN,DATA,FS,CS,ERR) | ; process PV1 (patient visit/movement) segment...
|
|
RXO(IEN,OIEN,DATA,FS,CS,ERR) | ; process RXO (pharmacy prescription order) segment...
; for inpatient meds, this segment contains an orderable item. this ; module is ONLY called if the order is "P"ending. it only files the ; orderable item if no drug is on file for the order. |
|
RXE(IEN,OIEN,DATA,FS,CS,ECH,ERR) | ; process RXE (order detail) segment...
; this segment may contain the drug name, though there may not be a drug ; because this can also be used for order detail for IV's which are ; contained in an RXC segment. this segment can also contain start/stop ; date&time, dosage and schedule |
|
RXR(IEN,OIEN,DATA,FS,CS,ERR) | ; process RXR (med administration route) segment...
|
|
RXC(IEN,OIEN,DATA,FS,CS,ERR) | ; process RXC (IV orders: additives/solutions) segment...
|
|
NTE(IEN,OIEN,DATA,FS,CS,ERR) | ; process NTE (note) segment...
; note: in the case of NTE segments, DATA is passed in as an array. ; NTE data can be in multiple nodes, the first subscript of which ; contains the actual NTE segments itself. |
|
ZZZ(IEN,OIEN,DATA,FS,CS,ERR) | ; process Hazardous Drug flags segment *108
|
|
HL7FMT(NEWLN,AR) | ;Unwrap formatted text array lines into a new array
; the escape character, \.br\ ,will cause a new array element to ; begin with the text after the escape character. |
|
CNVRT4(STR,SEP) | ;Converts a time string to 4 digit for consistency
; STR - string of times ; SEP - seperator character between times |
Name | Field # of Occurrence |
---|---|
$$UNESC^ALPBGEN | RXE+29 |
ERRBLD^ALPBUTL1 | AL1+1, AL1+4, ORC+3, PV1+1, RXO+5, RXO+8, RXE+5, RXR+1, RXC+1, RXC+5 , NTE+4, ZZZ+1 |
FILE^DIE | PV1+11 |
UPDATE^DIE | AL1+12, ORC+19, ORC+55, ORC+73, RXO+15, RXE+18, RXE+45, RXR+5, RXC+17, ZZZ+6 |
WP^DIE | ORC+23, NTE+48 |
$$FMDATE^HLFNC | ORC+28, RXE+22, RXE+24 |
Name | Line Occurrences (* Changed, ! Killed) |
---|---|
^ALPB(53.7 - [#53.7] | AL1+7, AL1+9, ORC+36, ORC+37, ORC+45, ORC+59, RXO+10, RXO+12, RXE+14, RXE+15 , RXC+9, RXC+13, NTE+8 |
Name | Line Occurrences |
---|---|
$$CNVRT4 | RXE+39, RXE+40 |
HL7FMT | NTE+34 |
>> | Not killed explicitly |
* | Changed |
! | Killed |
~ | Newed |
Name | Field # of Occurrence |
---|---|
ALEN | NTE+24~, NTE+29*, NTE+30 |
ALLTXT | NTE+24~, NTE+25*, NTE+29, NTE+30*, NTE+31*, NTE+34 |
ALPBADM | RXE+7~, RXE+38*, RXE+39*, RXE+41 |
ALPBALG | AL1+2~, AL1+3*, AL1+4, AL1+7, AL1+10 |
ALPBALGN | AL1+2~, AL1+5*, AL1+11 |
ALPBDIEN | RXO+4~, RXO+6*, RXO+8, RXO+13, RXE+6~, RXE+11*, RXE+14, RXE+16 |
ALPBDOA | RXE+7~, RXE+31*, RXE+43 |
ALPBDRUG | RXO+4~, RXO+7*, RXO+14, RXE+6~, RXE+12*, RXE+17 |
ALPBFERR | RXE+19! |
ALPBFIEN | ORC+4~, ORC+5*, ORC+10, ORC+12, ORC+14, ORC+16, ORC+18, ORC+23, ORC+39, ORC+40 , ORC+41, ORC+42, ORC+46, ORC+47, ORC+48, ORC+51, ORC+52, ORC+53, ORC+60, ORC+62 , ORC+64, ORC+66, ORC+69, ORC+70, ORC+71, PV1+2~, PV1+3*, PV1+6, PV1+8, PV1+10 , RXE+6~, RXE+9*, RXE+16, RXE+17, RXE+22, RXE+24, RXE+26, RXE+35, RXE+41, RXE+42 , RXE+43, ZZZ+2~, ZZZ+3*, ZZZ+4, ZZZ+5 |
ALPBFILE | AL1+2~, ORC+4~, PV1+2~, RXO+4~, RXE+6~, RXE+19!, RXR+2~, RXC+2~, NTE+5~, ZZZ+2~ |
ALPBFILE( | AL1+10*, AL1+11*, ORC+10*, ORC+12*, ORC+14*, ORC+16*, ORC+18*, ORC+39*, ORC+40*, ORC+41* , ORC+42*, ORC+46*, ORC+47*, ORC+48*, ORC+51*, ORC+52*, ORC+53*, ORC+60*, ORC+62*, ORC+64* , ORC+66*, ORC+69*, ORC+70*, ORC+71*, PV1+6*, PV1+8*, PV1+10*, RXO+13*, RXO+14*, RXE+16* , RXE+17*, RXE+22*, RXE+24*, RXE+26*, RXE+35*, RXE+41*, RXE+42*, RXE+43*, RXR+4*, RXC+14* , RXC+15*, RXC+16*, NTE+43*, NTE+44*, NTE+45*, ZZZ+4*, ZZZ+5* |
ALPBFILE(1 | NTE+12*, NTE+42, NTE+45 |
ALPBFNOD | RXC+2~, RXC+6*, RXC+14, RXC+15, RXC+16 |
ALPBGNOD | RXC+2~, RXC+4*, RXC+5, RXC+6, RXC+9, RXC+13 |
ALPBMREC | ORC+4~, ORC+31*, ORC+37, ORC+42, ORC+66 |
ALPBNAM | RXC+2~, RXC+11*, RXC+15 |
ALPBNEXT | AL1+2~, AL1+9*, AL1+10, AL1+11, ORC+4~, ORC+36*, ORC+37*, ORC+38, ORC+39, ORC+40 , ORC+41, ORC+42, ORC+45, ORC+46, ORC+47, ORC+48, ORC+51, ORC+52, ORC+53, ORC+56! , ORC+59*, ORC+60, ORC+62, ORC+64, ORC+66, ORC+69, ORC+70, ORC+71, RXO+4~, RXO+12* , RXO+13, RXO+14, RXE+6~, RXE+15*, RXE+16, RXE+17, RXE+19!, RXC+2~, RXC+13*, RXC+14 , RXC+15, RXC+16 |
ALPBNUM | RXC+2~, RXC+7*, RXC+9, RXC+14 |
ALPBREMV | RXE+7~, RXE+30*, RXE+40*, RXE+42 |
ALPBSCHD | AL1+2~, RXE+6~, RXE+29*, RXE+33*, RXE+34*, RXE+35 |
ALPBSCHDLE1 | AL1+2~ |
ALPBTEXT | ORC+4~, ORC+24! |
ALPBTEXT(1 | ORC+22* |
ALPBTIMG | RXE+7~, RXE+28*, RXE+29, RXE+30, RXE+31 |
ALPBTYP | RXC+2~, RXC+3*, RXC+4 |
ALPBUNIT | RXC+2~, RXC+12*, RXC+16 |
ALPBX | AL1+2~, ORC+4~, ORC+8*, ORC+28*, ORC+29!, ORC+36, ORC+39, ORC+60, PV1+2~, PV1+4* , PV1+6, PV1+8, PV1+10, RXE+6~, RXE+20*, RXE+22, RXE+24, RXE+26, RXE+28 |
ALPBX2 | AL1+2~ |
ALPBXX | AL1+2~ |
ALPBYY | AL1+2~ |
AR | HL7FMT~ |
AR( | HL7FMT+7*, HL7FMT+8*, HL7FMT+11* |
CS | AL1~, AL1+1, AL1+5, ORC~, ORC+3, ORC+12, ORC+14, ORC+16, ORC+21, ORC+31 , ORC+40, ORC+41, ORC+44, ORC+50, ORC+62, ORC+64, ORC+68, PV1~, PV1+6, PV1+8 , PV1+10, RXO~, RXO+5, RXO+6, RXO+7, RXE~, RXE+5, RXE+11, RXE+12, RXE+22 , RXE+24, RXE+26, RXE+28, RXE+34, RXE+38, RXR~, RXR+1, RXR+4, RXC~, RXC+1 , RXC+7, RXC+11, RXC+12, NTE~, NTE+4, ZZZ~, ZZZ+1 |
DATA | AL1~, AL1+1, AL1+3, AL1+4, AL1+5, ORC~, ORC+3, ORC+8, ORC+10, ORC+12 , ORC+14, ORC+16, ORC+18, ORC+21, ORC+28, ORC+31, ORC+40, ORC+41, ORC+44, ORC+50 , ORC+62, ORC+64, ORC+68, PV1~, PV1+1, PV1+4, RXO~, RXO+5, RXO+6, RXO+7 , RXE~, RXE+5, RXE+11, RXE+12, RXE+20, RXE+33, RXE+34, RXE+38, RXR~, RXR+1 , RXR+4, RXC~, RXC+1, RXC+3, RXC+7, RXC+11, RXC+12, NTE~, NTE+4, ZZZ~ , ZZZ+1, ZZZ+4, ZZZ+5 |
DATA( | NTE+28, NTE+29, NTE+30, NTE+31 |
DATA(1 | NTE+12, NTE+21* |
DLEN | NTE+24~, NTE+29*, NTE+30 |
ECH | RXE~, RXE+5, RXE+8 |
ELEN | NTE+24~, NTE+30* |
ERR | AL1~, AL1+1, AL1+4, ORC~, ORC+3, PV1~, PV1+1, RXO~, RXO+5, RXO+8 , RXE~, RXE+5, RXR~, RXR+1, RXC~, RXC+1, RXC+5, NTE~, NTE+4, ZZZ~ , ZZZ+1 |
ERR("DIERR" | AL1+7*, RXC+9* |
ESC | HL7FMT+3~, HL7FMT+6*, HL7FMT+7, HL7FMT+8, HL7FMT+9, HL7FMT+10 |
FS | AL1~, AL1+1, AL1+3, AL1+5, ORC~, ORC+3, ORC+8, ORC+10, ORC+12, ORC+14 , ORC+16, ORC+18, ORC+21, ORC+28, ORC+31, ORC+40, ORC+41, ORC+44, ORC+50, ORC+62 , ORC+64, ORC+68, PV1~, PV1+4, RXO~, RXO+5, RXO+6, RXO+7, RXE~, RXE+5 , RXE+11, RXE+12, RXE+20, RXE+33, RXE+34, RXE+38, RXR~, RXR+1, RXR+4, RXC~ , RXC+1, RXC+3, RXC+7, RXC+11, RXC+12, NTE~, NTE+4, NTE+12, NTE+21, ZZZ~ , ZZZ+1, ZZZ+4, ZZZ+5 |
I | NTE+5~, NTE+28*, NTE+29, NTE+30, NTE+31, NTE+42*, NTE+43, NTE+44, NTE+45*, HL7FMT+3~ , HL7FMT+5*, HL7FMT+7, HL7FMT+8, HL7FMT+11 |
IEN | AL1~, AL1+1, AL1+7, AL1+9, AL1+10, AL1+11, ORC~, ORC+3, ORC+5, ORC+36 , ORC+37, ORC+45, ORC+59, PV1~, PV1+1, PV1+3, RXO~, RXO+5, RXO+10, RXO+12 , RXO+13, RXO+14, RXE~, RXE+5, RXE+9, RXE+14, RXE+15, RXR~, RXR+1, RXR+4 , RXC~, RXC+1, RXC+9, RXC+13, RXC+14, RXC+15, RXC+16, NTE~, NTE+4, NTE+8 , NTE+48, ZZZ~, ZZZ+1, ZZZ+3 |
LIN | HL7FMT+3~, HL7FMT+7*, HL7FMT+8*, HL7FMT+9*, HL7FMT+11 |
LN | HL7FMT+3~, HL7FMT+5*, HL7FMT+6, HL7FMT+7, HL7FMT+9, HL7FMT+10 |
MLOG | ORC~, ORC+3, ORC+7, ORC+26 |
NEWALPB | NTE+24~, NTE+34 |
NEWALPB( | NTE+42, NTE+43, NTE+44, NTE+45 |
NEWLN | HL7FMT~, HL7FMT+5, HL7FMT+7*, HL7FMT+8*, HL7FMT+10* |
OIEN | ORC~, ORC+3, ORC+5, ORC+36, ORC+37, ORC+45, ORC+59, RXO~, RXO+5, RXO+10 , RXO+12, RXO+13, RXO+14, RXE~, RXE+5, RXE+9, RXE+14, RXE+15, RXR~, RXR+1 , RXR+4, RXC~, RXC+1, RXC+9, RXC+13, RXC+14, RXC+15, RXC+16, NTE~, NTE+4 , NTE+8, NTE+48, ZZZ~, ZZZ+1, ZZZ+3 |
CNVRT4+4~, CNVRT4+5* | |
QUIT | NTE+24~, NTE+25*, NTE+28, NTE+30*, HL7FMT+3~, HL7FMT+4*, HL7FMT+5, HL7FMT+8* |
SCS | AL1+2~, RXE+6~, RXE+8*, RXE+29, RXE+30, RXE+31 |
SEP | CNVRT4~, CNVRT4+5 |
STR | CNVRT4~, CNVRT4+5*, CNVRT4+6 |
SVZERO | ORC+4~, ORC+45*, ORC+46, ORC+47, ORC+48 |
U | ORC+46, ORC+47, ORC+48 |