PSOSPMV ;BIRM/MFR - Multiple Individual Prescription ASAP Data Listman Driver ;09/29/2020
Source file <PSOSPMV.m>
Package | Total | Call Graph |
---|---|---|
Outpatient Pharmacy | 7 | $$NUMERIC^PSOASAP0 $$RXNUM^PSOBPSU2 ($$RXRLDT,$$RXSITE,$$RXSTATE,$$RXSTATEP)^PSOBPSUT $$GETNDC^PSONDCUT ($$GETNDC,PAUSE)^PSOSPMU1 $$RXFILL^PSOSPMU2 ($$PREIEN,$$RPHIEN,$$SCREEN,$$SPOK,SETNAME)^PSOSPMUT |
VA FileMan | 4 | (IX,LIST)^DIC FILE^DICN $$GET1^DIQ ^DIR |
Kernel | 2 | ($$FMADD,$$NOW)^XLFDT $$UP^XLFSTR |
List Manager | 2 | EN^VALM FULL^VALM1 |
Registration | 1 | (ADD,DEM)^VADPT |
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 |
---|---|---|
Outpatient Pharmacy | 2 | PSO SPMP VOID RX VIEW/EXPORT PSOSPMU1 |
Kernel | 1 | ^DIC(19 |
Name | Comments | DBIA/ICR reference |
---|---|---|
MULTI | ; Entry Point
|
|
EN(STATE,PSOFROM,PSOTO) | ; Entry point
|
|
RXLOOP(PSODONE) | ; - Prompt for Rx, Fill, Record Type
|
|
ONEFILL(RXIEN,FILLNUM) | ; Get All Fills for on RX#
|
|
RECTYP(RXIEN,FILLNUM,RECTYPE) | ; Get Record Type
|
|
GETDATA(RXIEN,FILLNUM,RECTYPE,PSORXOK) | ; Entry point
|
|
BLDBAT(EXPTYPE,PSOBATLST) | ; Given a list of Rx's builds a new Export Batch
; Input: (r) EXPTYPE - Export Type ((MA)naul/(SC)heduled/(RX) Single Rx)/(VD) Void Only ; (r) List of Rx's: ^TMP("PSOSPMRX",$J,STATE,RXIEN,RXFILL)=Record Type ((N)ew/(R)evise/(V)oid) ; Note: This ^TMP global will be cleaned up at the end |
|
RXLKP(RXNUM) | ; - Peforms Lookup on the PRESCRIPTION file
|
|
VDRXBAT(BATIEN) | ; Check for VOIDs in RX batch
|
|
VOIDST(RXIEN,FILL) | ; Determine the state to send the void
; Make sure the void is sent to the state that received the most recent fill |
Name | Field # of Occurrence |
---|---|
IX^DIC | RXLKP+3 |
LIST^DIC | VDRXBAT+4 |
FILE^DICN | BLDBAT+17, BLDBAT+33 |
$$GET1^DIQ | RXLOOP+19, RXLOOP+20, RXLOOP+25, RXLOOP+26, RXLOOP+28, RECTYP+1, GETDATA+4, GETDATA+6, GETDATA+8, BLDBAT+13 , BLDBAT+21, BLDBAT+29, BLDBAT+30, VDRXBAT+3, VOIDST+7 |
^DIR | RXLOOP+3, RECTYP+17 |
$$NUMERIC^PSOASAP0 | BLDBAT+29 |
$$RXNUM^PSOBPSU2 | RXLOOP+9 |
$$RXRLDT^PSOBPSUT | ONEFILL+4, RECTYP+7 |
$$RXSITE^PSOBPSUT | RXLOOP+28, GETDATA+5 |
$$RXSTATE^PSOBPSUT | RXLOOP+17 |
$$RXSTATEP^PSOBPSUT | RXLOOP+18 |
$$GETNDC^PSONDCUT | BLDBAT+31 |
$$GETNDC^PSOSPMU1 | BLDBAT+27 |
PAUSE^PSOSPMU1 | RXLOOP+14 |
$$RXFILL^PSOSPMU2 | ONEFILL+1 |
$$PREIEN^PSOSPMUT | GETDATA+11 |
$$RPHIEN^PSOSPMUT | GETDATA+12 |
$$SCREEN^PSOSPMUT | RXLOOP+12 |
$$SPOK^PSOSPMUT | RXLOOP+30, BLDBAT+10 |
SETNAME^PSOSPMUT | GETDATA+7 |
ADD^VADPT | RXLOOP+19, GETDATA+7 |
DEM^VADPT | GETDATA+7 |
EN^VALM | EN+2 |
FULL^VALM1 | EN+3 |
$$FMADD^XLFDT | MULTI+3, MULTI+7 |
$$NOW^XLFDT | MULTI+3, MULTI+7, BLDBAT+14 |
$$UP^XLFSTR | RXLOOP+4 |
Name | Line Occurrences |
---|---|
Function Call: WRITE |
|
Function Call: WRITE |
|
Function Call: WRITE |
|
Function Call: WRITE |
|
Function Call: WRITE |
|
Function Call: WRITE |
|
Function Call: WRITE |
|
Function Call: WRITE |
|
Function Call: WRITE |
|
Function Call: WRITE |
|
Routine Call |
|
Routine Call |
|
Routine Call |
|
Routine Call |
|
FileNo | Call Tags |
---|---|
^PSDRUG - [#50] | GET1^DIQ |
^PSRX - [#52] | Classic Fileman Calls, GET1^DIQ |
^PS(58.41 - [#58.41] | GET1^DIQ |
^PS(58.42 - [#58.42] | Classic Fileman Calls, GET1^DIQ |
58.42001 | LIST^DIC |
^PS(59 - [#59] | GET1^DIQ |
Name | Line Occurrences (* Changed, ! Killed) |
---|---|
^DD("DILOCKTM" | BLDBAT+11 |
^PS(58.42 - [#58.42] | BLDBAT+11, BLDBAT+12, BLDBAT+18, VOIDST+4, VOIDST+5, VOIDST+6 |
^TMP("PSOSPMRX" | GETDATA+13*, BLDBAT+6, BLDBAT+9, BLDBAT+20, BLDBAT+22, BLDBAT+25, BLDBAT+35! |
>> | Not killed explicitly |
* | Changed |
! | Killed |
~ | Newed |
Name | Field # of Occurrence |
---|---|
% | BLDBAT+5~ |
ASAP | GETDATA+1~ |
BAT | VOIDST+2~, VOIDST+4*, VOIDST+5, VOIDST+6, VOIDST+7 |
BATCHIEN | BLDBAT+5~, BLDBAT+9, BLDBAT+10*, BLDBAT+12*, BLDBAT+19*, BLDBAT+23, BLDBAT+24, BLDBAT+36 |
BATIEN | MULTI+1~, RXLOOP+34*, VDRXBAT~, VDRXBAT+3, VDRXBAT+4 |
>> BEGRLDT | BLDBAT+15, BLDBAT+16 |
D | RXLKP+1~, RXLKP+2* |
DA | BLDBAT+5~, BLDBAT+24! |
DA(1 | BLDBAT+24* |
DD | BLDBAT+5~, BLDBAT+17!, BLDBAT+33! |
DFN | MULTI+1~, RXLOOP+1~, RXLOOP+19*, GETDATA+6*, GETDATA+7 |
DIC | BLDBAT+5~, BLDBAT+14*, BLDBAT+24!*, RXLKP+1~, RXLKP+2* |
DIC("DR" | BLDBAT+14*, BLDBAT+16*, BLDBAT+32* |
DIC(0 | BLDBAT+14*, BLDBAT+24*, RXLKP+2* |
DINUM | BLDBAT+5~, BLDBAT+12*, BLDBAT+13, BLDBAT+14, BLDBAT+24! |
DIR | MULTI+1~, RXLOOP+2!, RXLOOP+11!, RECTYP+3! |
DIR("?" | RXLOOP+2* |
DIR("??" | RXLOOP+2*, RECTYP+6* |
DIR("A" | RXLOOP+2*, RECTYP+3* |
DIR("B" | RECTYP+12*, RECTYP+16* |
DIR("L" | RECTYP+4*, RECTYP+5*, RECTYP+9*, RECTYP+10*, RECTYP+11*, RECTYP+15* |
DIR(0 | RXLOOP+2*, RECTYP+8*, RECTYP+14* |
DIRUT | MULTI+1~, RXLOOP+3, RXLOOP+11!, RECTYP+17 |
DLAYGO | BLDBAT+5~, BLDBAT+17*, BLDBAT+33* |
DO | BLDBAT+5~, BLDBAT+17!, BLDBAT+33! |
DONE | VOIDST+2~, VOIDST+3*, VOIDST+4, VOIDST+5, VOIDST+7* |
DR | BLDBAT+5~ |
DRUGIEN | GETDATA+1~, GETDATA+8*, BLDBAT+5~, BLDBAT+21*, BLDBAT+29, BLDBAT+30 |
DTOUT | RXLOOP+15! |
DUOUT | RXLOOP+11!, RXLOOP+15!, RECTYP+17 |
DUZ | BLDBAT+14 |
>> ENDRLDT | BLDBAT+16 |
EXPTYP | VDRXBAT+1~, VDRXBAT+3* |
EXPTYPE | BLDBAT~, BLDBAT+13, BLDBAT+14, BLDBAT+34 |
FILL | BLDBAT+5~, BLDBAT+8*, BLDBAT+22*, BLDBAT+25, BLDBAT+27, BLDBAT+31, BLDBAT+32, VOIDST~, VOIDST+4, VOIDST+5 |
FILLIEN | GETDATA+1~, GETDATA+9* |
FILLNUM | RXLOOP+1~, RXLOOP+11, RXLOOP+12, RXLOOP+15, RXLOOP+22, RXLOOP+33, ONEFILL~, ONEFILL+1*, ONEFILL+4, ONEFILL+6* , RECTYP~, RECTYP+7, GETDATA~, GETDATA+3*, GETDATA+9, GETDATA+11, GETDATA+12, GETDATA+13 |
LST | RXLOOP+1~, RXLOOP+23*, RXLOOP+24 |
MBMST | RXLOOP+1~, RXLOOP+20*, RXLOOP+21, RXLOOP+22 |
NDC | BLDBAT+5~, BLDBAT+27*, BLDBAT+30*, BLDBAT+31*, BLDBAT+32 |
PATIEN | GETDATA+1~, GETDATA+6* |
PREIEN | GETDATA+1~, GETDATA+11* |
>> PSOASVER | RXLOOP+25*, RECTYP+1*, GETDATA+4* |
PSOBATLST | MULTI+2~, RXLOOP+34, BLDBAT~ |
PSOBATLST( | MULTI+9, BLDBAT+23* |
PSOBATLST(0 | MULTI+5 |
PSODONE | MULTI+2~, MULTI+3*, MULTI+4, RXLOOP~, RXLOOP+3* |
PSOFROM | MULTI+2~, MULTI+3*, MULTI+9, EN~ |
PSOLSTLN | MULTI+1~ |
PSONAME | GETDATA+1~ |
PSOQUIT | MULTI+1~, RXLOOP+4*, RXLOOP+7, RXLOOP+8*, RXLOOP+9* |
PSORXOK | RXLOOP+33, GETDATA~ |
PSOTO | MULTI+2~, MULTI+7*, MULTI+9, EN~ |
PSOTPCNT | MULTI+1~ |
PSOTTCNT | MULTI+1~ |
>> PSOTXRTS | MULTI+6*, RXLOOP+26* |
REC | VDRXBAT+1~, VDRXBAT+5* |
RECTYP | VDRXBAT+1~ |
RECTYPAR | VDRXBAT+1~ |
RECTYPAR("DILIST" | VDRXBAT+5 |
RECTYPE | RXLOOP+1~, RXLOOP+15, RXLOOP+22, RXLOOP+33, RECTYP~, RECTYP+19*, GETDATA~, GETDATA+11, GETDATA+12, GETDATA+13 , BLDBAT+5~, BLDBAT+25*, BLDBAT+26, BLDBAT+32 |
RPHIEN | GETDATA+1~, GETDATA+12* |
RSTREC | GETDATA+1~ |
RTSDATA | GETDATA+1~ |
RTSREC | GETDATA+1~ |
RX | BLDBAT+5~, BLDBAT+8*, BLDBAT+20*, BLDBAT+21, BLDBAT+22, BLDBAT+25, BLDBAT+27, BLDBAT+31, BLDBAT+32 |
RXERMSG | RXLOOP+1~, RXLOOP+28*, RXLOOP+29, RXLOOP+30*, RXLOOP+31 |
RXIEN | MULTI+1~, RXLOOP+1~, RXLOOP+5*, RXLOOP+9*, RXLOOP+11, RXLOOP+12, RXLOOP+15, RXLOOP+17, RXLOOP+18, RXLOOP+19 , RXLOOP+22, RXLOOP+28, RXLOOP+33, ONEFILL~, ONEFILL+1, ONEFILL+4, RECTYP~, RECTYP+7, GETDATA~, GETDATA+5 , GETDATA+6, GETDATA+8, GETDATA+11, GETDATA+12, GETDATA+13, VOIDST~, VOIDST+4, VOIDST+5 |
RXNODE | VOIDST+2~, VOIDST+5*, VOIDST+6 |
RXNUM | RXLKP~, RXLKP+2 |
SCREEN | MULTI+1~, RXLOOP+1~, RXLOOP+12*, RXLOOP+13, RXLOOP+14 |
SITEIEN | GETDATA+1~, GETDATA+5* |
SPOK | BLDBAT+5~ |
STATE | EN~, EN+1, RXLOOP+17*, RXLOOP+18, BLDBAT+5~, BLDBAT+8*, BLDBAT+9*, BLDBAT+10, BLDBAT+13, BLDBAT+14 , BLDBAT+20, BLDBAT+22, BLDBAT+23, BLDBAT+25 |
STATECK | VOIDST+2~, VOIDST+7*, VOIDST+8 |
STATEIEN | MULTI+1~, MULTI+3*, MULTI+9*, EN+1~*, RXLOOP+24*, RXLOOP+25, RXLOOP+26, RXLOOP+27, RXLOOP+30, RECTYP+1 , GETDATA+4, GETDATA+13 |
STATELST | RXLOOP+1~, RXLOOP+18*, RXLOOP+21*, RXLOOP+22*, RXLOOP+23, RXLOOP+24 |
TRXTYPE | GETDATA+1~, GETDATA+10* |
VALM | MULTI+1~ |
VALMBCK | MULTI+1~ |
VALMCNT | MULTI+1~ |
VALMHDR | MULTI+1~ |
VALMSG | MULTI+1~ |
>> VAPA(5 | RXLOOP+19, RXLOOP+20, RXLOOP+21 |
>> VDRXBAT | VDRXBAT+2*, VDRXBAT+3, VDRXBAT+5*, VDRXBAT+6 |
X | MULTI+1~, RXLOOP+3, RXLOOP+4*, RXLOOP+5, RXLOOP+7, RXLOOP+8, RXLOOP+9, BLDBAT+5~, BLDBAT+14*, BLDBAT+32* , RXLKP+1~, RXLKP+2* |
XX | BLDBAT+5~, BLDBAT+10* |
Y | RECTYP+19, BLDBAT+5~, BLDBAT+19, RXLKP+1~, RXLKP+4 |