PSJPAD7U ;BIR/JCH-HL7 RECEIVER OMS PADE POCKET ACTIVITY ;9/3/15 1:34 PM
Source file <PSJPAD7U.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 |
| Name | Comments | DBIA/ICR reference |
|---|---|---|
| LOADMSG(PSJOMS,PSJMSH,PSJERR) | ; Load HL7 message into temporary global for processing
|
|
| DECODE | ; parse out data from segments
|
|
| MSH | ; Get Message Identifiers
|
|
| PID | ; Parse PID segment
|
|
| PV1 | ; Parse PV1 segment
|
|
| ORC | ; Parse ORC segment
|
|
| RQD | ; Parse RQD segment
|
|
| ZPM | ; Parse ZPM segment
|
|
| NTE | ; Parse NTE segment
|
|
| ERROR(TEXT,PSPCFG) | ; Log error with PADE inbound HL7 message
|
|
| CHKFLD(FLD,NONZ,LEN,MUMPS,FNAM) | ; Validates a minimum Required fields for Not Null
; Input: (r) FLD = field contents from incoming segment ; (o) NONZ = 1 if want to check for field value is Not 0 ; (o) LEN = length if want to check specific length of field ; (o) MUMPS= executable True/False code to test specific cond. ; (r) FNAM = HL7 field name, i.e. ZPM.3 |
|
| MESSAGE(ERRTXT,PSPCFG) | ;Build message and send to PADE mail group
|
|
| VALSYS(SYS) | ; Validate PADE system SYS. Return PADE INVENTORY SYSTEM (#58.601) file IEN if SYS exists an entry.
|
|
| VALCAB(SYS,CAB) | ; Validate PADE Cabinet CAB for system SYS.
; Return pointer to DISPENSING DEVICE (#1) multiple (sub-file 58.6011) in PADE INVENTORY SYSTEM (#58.601) file. |
|
| USER(PSJOMS,TYPE) | ; Find VistA User DUZ
|
|
| FINDIENS(FILES,VALS) | ; Find IENS for VALS in file/sub-files within FILE
|
|
| FILUSR(PSJPSYS,PSJNAME,PSJPUSR) | ; File PADE user to PADE USER (#58.64) if not already on file
|
| Name | Field # of Occurrence |
|---|---|
| $$FIND1^DIC | PID+24, PID+26, MESSAGE+22, USER+4 |
| FIND^DIC | VALSYS+2, VALCAB+3, FINDIENS+3, FINDIENS+4 |
| LIST^DIC | MESSAGE+25 |
| UPDATE^DIE | FILUSR+21 |
| $$UPPER^HLFNC | PID+34, FILUSR+15 |
| $$NEXTSEG^HLPRS | LOADMSG+10 |
| $$STARTMSG^HLPRS | LOADMSG+4 |
| GETPDMGR^PSJPAD7I | MESSAGE+30 |
| ERROR^PSJPAD7U | LOADMSG+6 |
| PSB^PSJPDRUT | NTE+6 |
| $$FMADD^XLFDT | ERROR+3 |
| $$FMTE^XLFDT | MESSAGE+8 |
| $$FMTHL7^XLFDT | MESSAGE+4 |
| $$HL7TFM^XLFDT | MESSAGE+8 |
| $$NOW^XLFDT | ERROR+3, MESSAGE+4 |
| $$ABS^XLFMTH | ZPM+68 |
| ^XMD | MESSAGE+33 |
| FileNo | Call Tags |
|---|---|
| ^DPT - [#2] | FIND1^DIC |
| ^PS(58.601 - [#58.601] | FIND1^DIC, FIND^DIC |
| 58.6011 | FIND^DIC |
| Name | Line Occurrences (* Changed, ! Killed) |
|---|---|
| ^DPT - [#2] | PID+14, PID+22, PID+33, PID+36, PID+39 |
| ^PS(58.601 - [#58.601] | MESSAGE+23 |
| ^PS(58.64 - [#58.64] | FILUSR+4, FILUSR+6 |
| ^VA(200 - [#200] | FILUSR+9, FILUSR+11 |
| >> | Not killed explicitly |
| * | Changed |
| ! | Killed |
| ~ | Newed |
| Name | Field # of Occurrence |
|---|---|
| CAB | VALCAB~, VALCAB+3 |
| DBNAMEF | FILUSR+10~, FILUSR+11*, FILUSR+12*, FILUSR+15 |
| DBNAMEG | FILUSR+10~, FILUSR+12* |
| DPTNAME | PID+32~, PID+33*, PID+34 |
| ERR | CHKFLD+7~*, CHKFLD+9*, CHKFLD+13*, CHKFLD+15*, CHKFLD+17*, CHKFLD+18, FILUSR+1~, FILUSR+8! |
| ERRTXT | MESSAGE~, MESSAGE+13*, MESSAGE+14*, MESSAGE+15, MESSAGE+19, MESSAGE+20 |
| FDA | FILUSR+1~, FILUSR+8! |
| FDA( | FILUSR+16*, FILUSR+18*, FILUSR+19*, FILUSR+20* |
| FIELD | DECODE+1! |
| FIELD(0 | DECODE+1*, DECODE+2*, DECODE+3 |
| FILE | FINDIENS+1~, FINDIENS+2*, FINDIENS+3, FINDIENS+4 |
| FILES | FINDIENS~, FINDIENS+2 |
| FLD | CHKFLD~, CHKFLD+9, CHKFLD+12, CHKFLD+14, CHKFLD+17 |
| FLEN | FILUSR+10~, FILUSR+14* |
| FNAM | CHKFLD~, CHKFLD+9, CHKFLD+13, CHKFLD+15, CHKFLD+17 |
| GBL | ERROR+2~*, ERROR+3, ERROR+4 |
| GLEN | FILUSR+10~, FILUSR+14* |
| HEADER | LOADMSG+2~, LOADMSG+4 |
| >> HL("VER" | MSH+3, ZPM+13, ZPM+50, ZPM+60 |
| HLCS | MESSAGE+2~ |
| HLFS | MESSAGE+2~ |
| HLHDRO | LOADMSG+2~ |
| HLHDRO(1 | MESSAGE+16 |
| HLMSG | LOADMSG+2~, LOADMSG+4, LOADMSG+10 |
| HLMTIEN | LOADMSG+2~, MSH+1 |
| HLMTIENS | LOADMSG+2~, MSH+2, MESSAGE+18 |
| HLNAMEF | FILUSR+10~, FILUSR+13*, FILUSR+14, FILUSR+15 |
| HLNAMEG | FILUSR+10~, FILUSR+13*, FILUSR+14 |
| HLVER | LOADMSG+2~ |
| II | PID+1~ |
| INDEX | PID+23~, PID+24*, PID+26* |
| LEN | CHKFLD~, CHKFLD+8*, CHKFLD+14, CHKFLD+15 |
| MSG | FINDIENS+1~ |
| MSGTEXT | MESSAGE+1~ |
| MSGTEXT( | MESSAGE+5*, MESSAGE+6*, MESSAGE+7*, MESSAGE+8*, MESSAGE+12*, MESSAGE+15*, MESSAGE+16* |
| MSGTYPE | MESSAGE+1~ |
| MSHREC | MESSAGE+1~ |
| MTXTLN | MESSAGE+2~, MESSAGE+3*, MESSAGE+5*, MESSAGE+6*, MESSAGE+7*, MESSAGE+8*, MESSAGE+12*, MESSAGE+15*, MESSAGE+16* |
| MUMPS | CHKFLD~, CHKFLD+8*, CHKFLD+16 |
| NEXT | ERROR+2~, ERROR+4* |
| NONZ | CHKFLD~, CHKFLD+8*, CHKFLD+12 |
| NURNAM | USER+3~, USER+19*, USER+20*, USER+22*, USER+25 |
| OK | LOADMSG+2~, LOADMSG+4* |
| PADUSIEN | FILUSR+1~, FILUSR+4*, FILUSR+6 |
| PATDFN | PID+1~, PID+8*, PID+12*, PID+14*, PID+15 |
| PATICN | PID+1~, PID+6*, PID+10*, PID+26 |
| PATID | PID+1~, PID+5*, PID+6, PID+7, PID+8, PID+9*, PID+10, PID+11, PID+12 |
| PATNAM | MESSAGE+10~*, MESSAGE+11*, MESSAGE+12 |
| PATSSN | PID+1~, PID+7*, PID+11*, PID+17*, PID+19*, PID+20, PID+24, PID+25, PID+31 |
| PSERR | PID+23~ |
| PSIX | PID+23~ |
| PSJC | FINDIENS+1~, FINDIENS+2*, FINDIENS+3 |
| PSJDFN | PID+23~, PID+24*, PID+25, PID+26* |
| PSJDUZ | FILUSR+1~, FILUSR+3*, FILUSR+6*, FILUSR+16*, FILUSR+22 |
| PSJERR | LOADMSG~, LOADMSG+3*, LOADMSG+5*, LOADMSG+6, FILUSR+1~ |
| PSJFSET | ZPM+1~*, ZPM+14*, ZPM+15, ZPM+16, ZPM+17, ZPM+28, ZPM+47, ZPM+48, ZPM+49, ZPM+51* , ZPM+57, ZPM+58, ZPM+59, ZPM+61*, ZPM+66, ZPM+67, ZPM+69, ZPM+70, ZPM+72, ZPM+73 , ZPM+74, ZPM+76, ZPM+77, ZPM+78 |
| PSJGETUS | FILUSR+1~ |
| PSJIEN | VALSYS+1!, VALCAB+2!, FINDIENS+1! |
| PSJIEN("DILIST" | VALSYS+3, VALCAB+4, FINDIENS+3, FINDIENS+5 |
| PSJIENS | FINDIENS+1~, FINDIENS+3*, FINDIENS+4, FINDIENS+5*, FINDIENS+6 |
| PSJKEY | FILUSR+1~ |
| PSJMINAM | PID+36~, PID+37*, PID+38 |
| PSJMSH | LOADMSG~, LOADMSG+4 |
| PSJNAM | PID+36~*, PID+37 |
| PSJNAME | FILUSR~, FILUSR+13, FILUSR+18 |
| PSJOMS | LOADMSG~, ZPM+80, ZPM+81, NTE+6, USER~ |
| PSJOMS( | USER+8, USER+11, USER+12, USER+15, USER+18* |
| PSJOMS("ACBCNT" | ZPM+17*, ZPM+21, ZPM+22*, ZPM+23*, ZPM+26*, ZPM+33, ZPM+34*, ZPM+37, ZPM+38*, ZPM+41* , ZPM+42, ZPM+44* |
| PSJOMS("CABID" | ZPM+6*, MESSAGE+13 |
| PSJOMS("CMTYPE" | NTE+3*, NTE+4, NTE+5, NTE+6, NTE+7 |
| PSJOMS("COMMENT" | NTE+2*, NTE+5* |
| PSJOMS("DFN" | PID+15*, PID+22, PID+24*, PID+25*, PID+26*, PID+31, PID+34*, PID+36, PID+39, PID+40 , MESSAGE+10 |
| PSJOMS("DISPSYS" | ZPM+5*, MESSAGE+14, MESSAGE+22, USER+4 |
| PSJOMS("DITMCLS" | ZPM+15* |
| PSJOMS("DRGEID" | RQD+4* |
| PSJOMS("DRGETXT" | RQD+5* |
| PSJOMS("DRGIID" | RQD+2*, ZPM+10* |
| PSJOMS("DRGITM" | ZPM+9*, ZPM+10 |
| PSJOMS("DRGITXT" | RQD+3* |
| PSJOMS("DRGTXT" | ZPM+12*, ZPM+14* |
| PSJOMS("DRGUNIT" | RQD+7*, ZPM+78* |
| PSJOMS("DRWR" | ZPM+7* |
| PSJOMS("DTRDT" | ORC+5* |
| PSJOMS("DWARD" | ZPM+69* |
| PSJOMS("EXBCNT" | ZPM+16*, ZPM+21*, ZPM+22, ZPM+23*, ZPM+26, ZPM+32, ZPM+33, ZPM+34*, ZPM+41, ZPM+42* , ZPM+44 |
| PSJOMS("FACIL" | ZPM+67* |
| PSJOMS("HLMTIEN" | MSH+1* |
| PSJOMS("HLMTIENS" | MSH+2* |
| PSJOMS("HLVER" | MSH+3* |
| PSJOMS("LOTNUM" | ZPM+76* |
| PSJOMS("MDFN" | PID+40* |
| PSJOMS("MPTNAMA" | PID+40* |
| PSJOMS("MPTNAMB" | PID+40* |
| PSJOMS("NTE" | NTE+1* |
| PSJOMS("NUR1" | ZPM+80* |
| PSJOMS("NUR1A" | ZPM+47*, USER+6 |
| PSJOMS("NUR1B" | ZPM+48*, ZPM+51*, ZPM+52*, ZPM+53*, ZPM+54*, ZPM+55*, USER+19 |
| PSJOMS("NUR1C" | ZPM+49*, ZPM+52*, ZPM+53*, ZPM+54*, ZPM+55*, USER+19 |
| PSJOMS("NUR2" | ZPM+81* |
| PSJOMS("NUR2A" | ZPM+57*, USER+6 |
| PSJOMS("NUR2B" | ZPM+58*, ZPM+61*, ZPM+62*, ZPM+63*, ZPM+64*, USER+20 |
| PSJOMS("NUR2C" | ZPM+59*, ZPM+62*, ZPM+63*, ZPM+64*, USER+20 |
| PSJOMS("ORC" | ORC+1* |
| PSJOMS("PID" | PID+2* |
| PSJOMS("PKT" | ZPM+8*, NTE+7* |
| PSJOMS("PKTCAP" | ZPM+72* |
| PSJOMS("POREORD" | ZPM+73* |
| PSJOMS("PSDQ" | ZPM+68* |
| PSJOMS("PSJDT" | ZPM+74*, ZPM+75*, MESSAGE+4 |
| PSJOMS("PTBED" | PV1+5* |
| PSJOMS("PTCLASS" | PV1+2* |
| PSJOMS("PTID" | PID+3*, PID+25*, PID+31, PID+33, PID+34 |
| PSJOMS("PTLOC" | PV1+3* |
| PSJOMS("PTNAMA" | PID+28*, PID+34, PID+40, MESSAGE+9, MESSAGE+10 |
| PSJOMS("PTNAMB" | PID+29*, PID+40, MESSAGE+9, MESSAGE+10 |
| PSJOMS("PTNAMC" | PID+30*, PID+38* |
| PSJOMS("PTROOM" | PV1+4* |
| PSJOMS("PV1" | PV1+1* |
| PSJOMS("QTY" | RQD+6* |
| PSJOMS("RQD" | RQD+1* |
| PSJOMS("SBDRWR" | ZPM+70*, ZPM+71* |
| PSJOMS("SERNUM" | ZPM+77* |
| PSJOMS("SSN" | PID+20* |
| PSJOMS("STYP" | ZPM+4* |
| PSJOMS("TOTITMS" | ZPM+66* |
| PSJOMS("TRNSAMT" | ZPM+28*, ZPM+32*, ZPM+33*, ZPM+37*, ZPM+38, ZPM+41*, ZPM+42*, ZPM+44, ZPM+68 |
| PSJOMS("TTYPE" | ZPM+3*, ZPM+4, ZPM+11*, ZPM+20, ZPM+26, ZPM+31, ZPM+36, ZPM+40, ZPM+44 |
| PSJOMS("VAORD" | ORC+2*, ORC+3* |
| PSJOMS("XORD" | ORC+4* |
| PSJOMS("ZPM" | ZPM+2* |
| PSJPOUT | MESSAGE+1~ |
| PSJPOUT("DILIST" | MESSAGE+26, MESSAGE+28 |
| PSJPSYS | USER+3~, USER+4*, USER+25, FILUSR~, FILUSR+4, FILUSR+20 |
| PSJPUSR | FILUSR~, FILUSR+2, FILUSR+4, FILUSR+9, FILUSR+11, FILUSR+16, FILUSR+19 |
| PSJUDUZ | USER+1!, USER+24*, USER+25*, USER+26 |
| PSJUFSET | ZPM+1~* |
| PSJUSRID | USER+3~, USER+5*, USER+6*, USER+25 |
| PSJVAL | FILUSR+1~ |
| PSMSGDT | MESSAGE+2~, MESSAGE+4*, MESSAGE+8 |
| PSPCFG | ERROR~, ERROR+5, MESSAGE~, MESSAGE+24 |
| PSPDSYS | MESSAGE+2~, MESSAGE+22*, MESSAGE+23*, MESSAGE+25 |
| PSPMGCNT | MESSAGE+2~, MESSAGE+22*, MESSAGE+26*, MESSAGE+28 |
| PSPMGRP | MESSAGE+2~, MESSAGE+27~, MESSAGE+28*, MESSAGE+29 |
| PSPMGTYP | MESSAGE+2~, MESSAGE+24*, MESSAGE+25 |
| PSUBB | USER+3~, USER+8*, USER+12, USER+18 |
| PSUBC | USER+3~, USER+9~*, USER+11, USER+15*, USER+18 |
| PSVAL | PID+23~, PID+24*, PID+26* |
| PTMP | USER+3~, USER+8*, USER+13, USER+15* |
| PTMPF | USER+3~, USER+10*, USER+11*, USER+13*, USER+17*, USER+18 |
| PTMPL | USER+3~, USER+10*, USER+12*, USER+13*, USER+16*, USER+18 |
| PID+1~, PID+5*, PID+6, PID+7, PID+8, PID+9*, PID+10, PID+11, PID+12 | |
| SCR | USER+3~ |
| SEG | LOADMSG+2~, LOADMSG+10 |
| SEG("SEGMENT | TYPE" , DECODE+2 |
| SEG(0 | PID+2, PV1+1, ORC+1, RQD+1, ZPM+2, NTE+1 |
| SEG(1 | ZPM+3 |
| SEG(10 | ZPM+28 |
| SEG(11 | ZPM+47, ZPM+48, ZPM+49, ZPM+51 |
| SEG(12 | ZPM+57, ZPM+58, ZPM+59, ZPM+61 |
| SEG(13 | ZPM+66 |
| SEG(14 | ZPM+67 |
| SEG(15 | ZPM+69 |
| SEG(16 | ZPM+70 |
| SEG(17 | ZPM+72 |
| SEG(18 | PID+19, ZPM+73 |
| SEG(19 | PID+17, ZPM+74 |
| SEG(2 | PV1+2, ORC+2, RQD+2, RQD+3, ZPM+5 |
| SEG(20 | ZPM+76 |
| SEG(21 | ZPM+77 |
| SEG(3 | PID+3, PID+5, PID+6, PID+7, PID+8, PID+9, PID+10, PID+11, PID+12, PV1+3 , PV1+4, PV1+5, ORC+4, RQD+4, RQD+5, ZPM+6, NTE+2 |
| SEG(34 | ZPM+78 |
| SEG(4 | ZPM+7, NTE+3 |
| SEG(5 | PID+28, PID+29, PID+30, RQD+6, ZPM+8 |
| SEG(6 | RQD+7, ZPM+9, ZPM+12 |
| SEG(7 | ZPM+14, ZPM+15 |
| SEG(8 | ZPM+16 |
| SEG(9 | ORC+5, ZPM+17 |
| SYS | VALSYS~, VALSYS+2, VALCAB~, VALCAB+3 |
| TEXT | ERROR~, ERROR+1, ERROR+4, ERROR+5 |
| TYPE | USER~, USER+6, USER+8, USER+9, USER+15, USER+19, USER+20, USER+22 |
| VAL | FINDIENS+1~, FINDIENS+2*, FINDIENS+3, FINDIENS+4 |
| VALS | FINDIENS~, FINDIENS+2 |
| X | PID+23~ |
| XMDUZ | MESSAGE+1~, MESSAGE+32* |
| XMSUB | MESSAGE+1~, MESSAGE+18*, MESSAGE+19*, MESSAGE+20* |
| XMTEXT | MESSAGE+1~, MESSAGE+21* |
| XMY | MESSAGE+1~, MESSAGE+30, MESSAGE+31 |
| XMY("G." | MESSAGE+29* |
| XMZ | MESSAGE+1~ |
| Y | PID+23~ |