PSOTPHL1 ;BPFO/EL-CREATE HL7 BATCH MESSAGE FILE ;09/10/03
Source file <PSOTPHL1.m>
| Package | Total | Call Graph |
|---|---|---|
| Health Level Seven | 4 | $$HLDATE^HLFNC (INIT,MSH)^HLFNC2 GENERATE^HLMA CREATE^HLTF |
| Outpatient Pharmacy | 2 | EN^PSOTPHL1 BLDPID^PSOTPHL2 |
| VA Fileman | 2 | (DW,NOW)^%DTC $$GET1^DIQ |
| Kernel | 1 | (EDIT,RESCH)^XUTMOPT |
| MailMan | 1 | ^XMD |
| Registration | 1 | (ADD,DEM)^VADPT |
| Package | Total | Caller Graph |
|---|---|---|
| Outpatient Pharmacy | 3 | PSO TPB HL7 EXTRACT PSOHELP1 PSOTPHL1 |
| Name | Comments | DBIA/ICR reference |
|---|---|---|
| RESET | ; Reset to run tomorrow
|
|
| SUCC | ; Msg for successful run
|
|
| CLEANUP | ; Clean up variables
|
|
| MSH | ; CREATE "MSH" SEGMENT
|
|
| DATE | ; Check if first time run or Sunday
|
|
| SCH | ; CREATE "SCH" SEGMENT
|
|
| EN(RDT,EDT,SDT) | ; ENTRY POINT FOR PROCESS
|
|
| PID | ; CREATE "PID" SEGMENT
|
|
| P10 | ||
| INIT | ; Variable Initialization
|
|
| P30 | ||
| EXTRACT | ; Extract data from File 52.91
|
|
| GEN | ||
| FRTIME | ; To generate a complete data set for the frist time
|
|
| ENDS | ||
| END | ||
| GDATE | ||
| INHL7 | ||
| WRITE | ; Write single line
|
|
| START | ||
| DFN | ||
| FAIL | ; Msg for unsuccessful run
|
|
| F10 | ||
| INHD | ||
| BTS | ; CREATE "BTS" SEGMENT
|
|
| PROCESS | ; Sort and Process the message body
|
|
| P20 | ||
| WRITEN | ; Write multiple lines
|
|
| RESET1 | ; Reset to run tomorrow
|
|
| ;Send mail message
|
||
| BHS | ; CREATE "BHS" SEGMENT
|
|
| OUT | ; End of compilation
|
| Name | Field # of Occurrence |
|---|---|
| DW^%DTC | DATE+4 |
| NOW^%DTC | DATE+3, MAIL+24 |
| $$GET1^DIQ | DATE+2, SCH+32 |
| $$HLDATE^HLFNC | EXTRACT+10, SCH+28 |
| INIT^HLFNC2 | INHL7+2 |
| MSH^HLFNC2 | P30+2, MSH+2 |
| GENERATE^HLMA | GEN |
| CREATE^HLTF | INHL7+4 |
| EN^PSOTPHL1 | START+2 |
| BLDPID^PSOTPHL2 | PID+3 |
| ADD^VADPT | PID+2 |
| DEM^VADPT | PID+2 |
| ^XMD | MAIL+26, MAIL+30 |
| EDIT^XUTMOPT | RESET1+1 |
| RESCH^XUTMOPT | RESET+1 |
| FileNo | Call Tags |
|---|---|
| ^DIC(4 - [#4] | GET1^DIQ |
| Name | Line Occurrences (* Changed, ! Killed) |
|---|---|
| ^DD("DD" | MAIL+24 |
| ^PS( | P10, P20, P20+1!, F10, F10+1, F10+2, EXTRACT+2, OUT+4* |
| ^TMP( | INIT+6!, P20+2*, F10+4*, P30, DFN, DFN+1, OUT+2! |
| ^TMP("HLS" | INIT+6!, WRITE+2*, WRITEN+1*, OUT+2! |
| Name | Line Occurrences |
|---|---|
| BHS | EN+2 |
| BTS | EN+4 |
| CLEANUP | END+1 |
| DATE | START |
| DFN | DFN+6 |
| END | OUT+1 |
| ENDS | START |
| EXTRACT | DFN+2 |
| F10 | F10+1, F10+5 |
| FAIL | MAIL+13 |
| FRTIME | PROCESS+2 |
| GDATE | DATE+5 |
| GEN | P30, DFN |
| INHD | INHL7+5 |
| INHL7 | INIT+4 |
| INIT | EN+1 |
| END | |
| MSH | DFN+3 |
| OUT | EN+1, EN+5 |
| P10 | P20 |
| P20 | P20+1, P20+3 |
| P30 | P10 |
| PID | DFN+5 |
| PROCESS | EN+3 |
| RESET | ENDS, RESET1+1 |
| SCH | DFN+4 |
| SUCC | MAIL+14 |
| WRITE | P30+3, MSH+4, SCH+37, PID+7 |
| WRITEN | SCH+38, PID+8 |
| >> | Not killed explicitly |
| * | Changed |
| ! | Killed |
| ~ | Newed |
| Name | Field # of Occurrence |
|---|---|
| >> % | MAIL+24 |
| A | PSOTPHL1+22~, EXTRACT+1*, EXTRACT+9*, EXTRACT+10, SCH+1*, SCH+5*, SCH+19, CLEANUP+1!, MAIL+2*, MAIL+7* , MAIL+8*, MAIL+9*, MAIL+11, MAIL+12*, MAIL+29 |
| B | PSOTPHL1+22~, EXTRACT+1*, EXTRACT+10*, SCH+1*, SCH+11*, SCH+20, CLEANUP+1!, MAIL+2*, MAIL+7*, MAIL+10* , MAIL+11, MAIL+17 |
| BBDT | PSOTPHL1+24~, EXTRACT+1*, EXTRACT+6, SCH+26, CLEANUP+3! |
| BCNT | PSOTPHL1+23~, INIT+1*, BHS+1*, CLEANUP+2! |
| BEDT | PSOTPHL1+24~, EXTRACT+1*, SCH+27, CLEANUP+3! |
| C | PSOTPHL1+22~, EXTRACT+1*, EXTRACT+10*, SCH+1*, SCH+13*, SCH+14*, SCH+15*, SCH+16*, SCH+20, CLEANUP+1! , MAIL+2*, MAIL+3*, MAIL+4, MAIL+5, MAIL+28 |
| CK | PSOTPHL1+22~, START*, DATE+6*, INIT+1*, INHL7+3*, EN+1, CLEANUP+1!, OUT+1, MAIL+10, MAIL+13 |
| DADT | PSOTPHL1+24~, EXTRACT+1*, SCH+24, CLEANUP+3! |
| DATA | PSOTPHL1+23~, EXTRACT+1*, EXTRACT+3*, EXTRACT+4, CLEANUP+2! |
| DFN | PSOTPHL1+23~, P10+2*, P20*, P20+1, P20+2, FRTIME+1*, F10*, F10+1, F10+2, F10+4 , P30+5*, DFN*, DFN+1, EXTRACT+2, PID+3, CLEANUP+2! |
| DIFROM | MAIL+26~ |
| DT | GDATE+2 |
| DTIME | INHD* |
| DUZ | MAIL+1, MAIL+29 |
| EDT | PSOTPHL1+22~, START+2, DATE+1*, DATE+2*, DATE+5, DATE+8, GDATE+1, GDATE+2*, INIT+6, EN~ , P10, P20+2, F10+4, P30, DFN, DFN+1, CLEANUP+1!, OUT+2, OUT+3, OUT+4 |
| ERR | PSOTPHL1+22~, INHL7+3*, PID+3, CLEANUP+1!, FAIL+1 |
| EVENT | PSOTPHL1+23~, INHL7*, INHL7+2, GEN, CLEANUP+2! |
| EXC | PSOTPHL1+24~, EXTRACT+1*, SCH+7*, SCH+11, SCH+20, CLEANUP+3! |
| FRTIME | PSOTPHL1+22~, DATE+1*, DATE+5*, PROCESS+2, ENDS, MAIL+9 |
| >> HL | INHL7+2, INHL7+3, P30+2, MSH+2, PID+3 |
| >> HL("ACAT" | INHD+11* |
| >> HL("APAT" | INHD+12* |
| >> HL("CC" | INHD+10* |
| >> HL("DTM" | INHD+1* |
| >> HL("ECH" | INHD+3* |
| >> HL("ETN" | INHD+4*, EXTRACT+6*, EXTRACT+7*, EXTRACT+8 |
| >> HL("FS" | INHD+2*, SCH+19, SCH+20, SCH+21 |
| >> HL("MTN" | INHD+5*, EXTRACT+8 |
| >> HL("MTN_ETN" | INHD+6*, EXTRACT+8* |
| >> HL("PID" | INHD+7* |
| >> HL("Q" | INHD+8* |
| >> HL("RAN" | INHD+14* |
| >> HL("SAN" | INHD+13* |
| >> HL("VER" | INHD+9* |
| >> HLDA | INHL7+4, GEN, OUT+4, SUCC+4 |
| >> HLDT | INHL7+4 |
| >> HLDT1 | INHL7+4, INHD+1 |
| >> HLMID | INHL7+4, P30+2, MSH+2 |
| >> HLP | GEN* |
| I | PSOTPHL1+22~, EXTRACT+4*, EXTRACT+10*, SCH+1*, SCH+22*, SCH+29, SCH+30*, SCH+33, SCH+34*, SCH+36* , SCH+37, PID+6*, PID+7, WRITEN+1, CLEANUP+1!, MAIL+2*, MAIL+19, FAIL+1*, SUCC+1* |
| INS | PSOTPHL1+24~, EXTRACT+1*, SCH+32, CLEANUP+3! |
| L | PSOTPHL1+22~, CLEANUP+1!, MAIL+2*, MAIL+20, FAIL+2*, SUCC+2* |
| LN | PSOTPHL1+23~, INIT+1*, BHS+2*, BTS+1*, WRITE+1*, WRITE+2, WRITEN+1, CLEANUP+2!, OUT+4 |
| MCNT | PSOTPHL1+23~, INIT+1*, P30+1*, P30+2, MSH+1*, MSH+2, CLEANUP+2!, OUT+4 |
| PADT | PSOTPHL1+24~, EXTRACT+1*, EXTRACT+5*, SCH+25, CLEANUP+3! |
| PGM | PSOTPHL1+23~, INIT+2*, INIT+6, P20+2, F10+4, P30, DFN, DFN+1, CLEANUP+2!, OUT+2 |
| PID | PID+1!, PID+3, OUT+2! |
| PID( | PID+6 |
| PID(1 | PID+4 |
| PN | PSOTPHL1+24~, EXTRACT+1*, CLEANUP+3! |
| PS | PSOTPHL1+23~, DATE+1*, DATE+2, CLEANUP+2!, OUT+4 |
| PSO | PSOTPHL1+23~, INIT+3*, P10, P20, P20+1, F10, F10+1, F10+2, EXTRACT+2, CLEANUP+2! |
| PSOTTEXT | MAIL+2!, MAIL+31! |
| PSOTTEXT( | MAIL+17*, MAIL+21*, MAIL+22* |
| PSOTTEXT(1 | MAIL+5*, MAIL+29* |
| PSOTTEXT(2 | MAIL+15* |
| PSOTTEXT(3 | MAIL+16* |
| PSOTTEXT(4 | MAIL+18* |
| PSOTTEXT(5 | MAIL+19* |
| PSOTTEXT(6 | MAIL+20* |
| PSOTTEXT(7 | MAIL+23* |
| PSOTTEXT(8 | MAIL+24* |
| PSOTTEXT(9 | MAIL+25* |
| R | PSOTPHL1+22~, GEN, CLEANUP+1!, MAIL+2*, MAIL+21, FAIL+3*, SUCC+3* |
| RDT | PSOTPHL1+22~, START+2, GDATE*, GDATE+1*, EN~, PROCESS+1*, P10*, P10+1, P20, P20+1 , P20+2, FRTIME+1*, DFN+1*, EXTRACT+6, SCH+28, CLEANUP+1! |
| REASON | PSOTPHL1+24~, EXTRACT+1*, SCH+1*, SCH+5, SCH+19, CLEANUP+3! |
| SCH | SCH+1!, OUT+2! |
| SCH( | SCH+22*, SCH+29*, SCH+30*, SCH+33*, SCH+34*, SCH+36 |
| SDT | PSOTPHL1+22~, START+2, DATE+8*, EN~, PROCESS+1*, P10+1*, FRTIME+2*, F10+3*, CLEANUP+1!, OUT+3* , OUT+4 |
| SET | PSOTPHL1+22~, DATE+1*, GDATE*, PROCESS+1, OUT+4, END+1, MAIL+8 |
| STA | PSOTPHL1+24~, EXTRACT+1*, SCH+32, CLEANUP+3! |
| U | INHL7+1* |
| WAITYP | PSOTPHL1+24~, EXTRACT+1*, SCH+13, SCH+14, SCH+15, SCH+20, CLEANUP+3! |
| X | PSOTPHL1+22~, DATE+6, FRTIME+1*, F10+2*, F10+3, F10+4, P30+2, EXTRACT+1*, EXTRACT+2*, EXTRACT+4 , MSH+2, SCH+1*, SCH+2*, SCH+3*, SCH+4*, SCH+5, SCH+7*, SCH+8*, SCH+9*, SCH+10* , SCH+11, SCH+18*, SCH+19*, SCH+20*, SCH+21*, SCH+22, SCH+24*, SCH+25*, SCH+26*, SCH+27* , SCH+28*, SCH+29, SCH+30, SCH+32*, SCH+33, SCH+34, SCH+36*, PID+5*, PID+6*, WRITE+2 , WRITEN+1, CLEANUP+1!, MAIL+2*, MAIL+22, FAIL+4*, SUCC+4* |
| XMDUZ | MAIL+2*, MAIL+6*, MAIL+31! |
| >> XMMG | MAIL+27, MAIL+29* |
| XMSUB | MAIL+2*, MAIL+11*, MAIL+12, MAIL+29*, MAIL+31! |
| >> XMTEST | MAIL+2* |
| XMTEXT | MAIL+26*, MAIL+30*, MAIL+31! |
| XMY | MAIL+2!, MAIL+31! |
| XMY( | MAIL+4*, MAIL+28!, MAIL+29* |
| >> Y | MAIL+24* |
| >> ZTQUEUED | ENDS+1 |
| >> ZTREQ | ENDS+1* |