PSOUTIL ;IHS/DSD/JCM - outpatient pharmacy utility routine ;29-May-2012 15:16;PLS
Source file <PSOUTIL.m>
| Package | Total | Call Graph |
|---|---|---|
| VA Fileman | 3 | DD^%DT C^%DTC ^DIR |
| IHS Changes To Pharmacy | 1 | $$ISSCH^APSPFNC2 |
| Outpatient Pharmacy | 1 | (COSIGN,PROV)^PSODIR |
| Name | Comments | DBIA/ICR reference |
|---|---|---|
| GFDT | ;
|
|
| CHKPRVX | ||
| NPSOSD(PSORX) | ; Entry point to add newly added rx to patients PSOSD array
|
|
| SUSDATEK(PSOX) | ;
|
|
| PROV(PSORENW) | ;called from psoornew
|
|
| CHKPRV | ;check inactive providers and cosinging providers called from PSORENW (renew rx)
|
|
| ACP | ||
| RENFDT(PSOX) | ;gets the correct fill date
|
|
| SUSDATE(PSOX) | ;
|
|
| RNPSOSD | ;update PSOSD array for renewals
|
|
| NEXT(PSOX) | ;
|
|
| NEXTX | ;
|
|
| SDTX | ;
|
|
| STATUS(PSOREA,PSOSTAT) | ;
|
| Name | Line Occurrences |
|---|---|
| Function Call: WRITE |
|
| Routine Call |
|
| Name | Line Occurrences (* Changed, ! Killed) |
|---|---|
| ^DD("DD" | SUSDATE+6, SDTX+2 |
| ^DD(52 | STATUS+33 |
| ^PS(52.5 - [#52.5] | SUSDATE+4, GFDT+5, GFDT+6, GFDT+8 |
| ^PSDRUG - [#50] | CHKPRV+19 |
| ^PSRX - [#52] | NPSOSD+2, NPSOSD+4, NPSOSD+5, RNPSOSD+2, RNPSOSD+4, RNPSOSD+5, RNPSOSD+8, RNPSOSD+9, NEXT+1, NEXT+2 , NEXT+3, NEXT+5, NEXT+13, NEXT+14, ACP, RENFDT+6, RENFDT+7, RENFDT+8, GFDT+1, GFDT+3 |
| ^PSRX("ACP" | ACP* |
| ^TMP("PS" | NPSOSD+6*, RNPSOSD+10* |
| ^VA(200 - [#200] | CHKPRV+1, CHKPRV+6, CHKPRV+7, CHKPRV+11, CHKPRV+13, CHKPRV+21, CHKPRV+26 |
| Name | Line Occurrences |
|---|---|
| CHKPRVX | CHKPRV+1, CHKPRV+6, CHKPRV+12, CHKPRV+20 |
| GFDT | RENFDT+6, RENFDT+8 |
| NEXTX | NEXT+5 |
| SDTX | RENFDT+6 |
| Name | Field # of Occurrence |
|---|---|
| ^("IB" | ACP |
| ^(0 | GFDT+6 |
| ^(2 | ACP |
| >> | Not killed explicitly |
| * | Changed |
| ! | Killed |
| ~ | Newed |
| Name | Field # of Occurrence |
|---|---|
| >> ACOM | STATUS+1*, STATUS+4*, STATUS+7*, STATUS+11*, STATUS+15*, STATUS+19*, STATUS+23*, STATUS+27* |
| APSPDIEN | CHKPRV+17~, CHKPRV+18*, CHKPRV+19, CHKPRV+20 |
| CLOZPAT | CHKPRV+17~, CHKPRV+19*, CHKPRV+20, CHKPRV+22 |
| DIR | STATUS+39! |
| DIR("A" | STATUS+39* |
| DIR(0 | STATUS+39* |
| DIRUT | STATUS+39! |
| >> DSMSG | STATUS+1*, STATUS+3, STATUS+6, STATUS+10, STATUS+14, STATUS+18, STATUS+22, STATUS+26, STATUS+29, STATUS+36 |
| DT | CHKPRV+12, CHKPRV+26, RENFDT+9 |
| DTOUT | STATUS+39! |
| DUOUT | STATUS+39! |
| LBL | RENFDT+4~, GFDT+3* |
| LBP | RENFDT+4~, GFDT+3*, GFDT+4 |
| >> OR0 | STATUS+1, STATUS+4, STATUS+7, STATUS+11, STATUS+15, STATUS+19, STATUS+23, STATUS+27 |
| >> POERR | STATUS+3, STATUS+6, STATUS+10, STATUS+14, STATUS+18, STATUS+22, STATUS+26, STATUS+29, STATUS+35, STATUS+36 |
| PSOA | STATUS+33*, STATUS+34, STATUS+35, STATUS+36, STATUS+37! |
| PSOB | STATUS+33*, STATUS+37! |
| PSODIR | CHKPRVX! |
| PSODIR("COSIG | NING PROVIDER" , CHKPRV+29, CHKPRV+30 |
| PSODIR("FIELD" | CHKPRV+3*, CHKPRV+8*, CHKPRV+14*, CHKPRV+23*, CHKPRV+28* |
| PSODIR("PROVIDER" | CHKPRV+28* |
| >> PSODRUG("IEN" | CHKPRV+18 |
| >> PSODRUG("NAME" | NPSOSD+3, NPSOSD+4, NPSOSD+5, NPSOSD+6, RNPSOSD+3, RNPSOSD+4, RNPSOSD+5, RNPSOSD+6, RNPSOSD+8, RNPSOSD+9 , RNPSOSD+10 |
| >> PSODRUG("NDF" | NPSOSD+4, NPSOSD+5 |
| >> PSODRUG("VA C | LASS" , NPSOSD+4, NPSOSD+5 |
| >> PSOOPT | STATUS+1 |
| PSOREA | STATUS~, STATUS+2, STATUS+5, STATUS+9, STATUS+13, STATUS+17, STATUS+21, STATUS+25, STATUS+29, STATUS+31 |
| PSORENW | PROV~, CHKPRV+3, CHKPRV+8, CHKPRV+14, CHKPRV+23 |
| PSORENW("COSI | GNING PROVIDER" , CHKPRV+26, CHKPRV+30* |
| PSORENW("COSIGNER" | CHKPRV+26 |
| PSORENW("DFLG" | CHKPRV+1, CHKPRV+4*, CHKPRV+6, CHKPRV+9*, CHKPRV+12, CHKPRV+15*, CHKPRV+20, CHKPRV+24*, CHKPRV+29* |
| PSORENW("DRUG | IEN" , CHKPRV+18 |
| PSORENW("IRXN" | RNPSOSD+4, RNPSOSD+5, RNPSOSD+8, RNPSOSD+9 |
| PSORENW("OIRXN" | RNPSOSD+2, RNPSOSD+3, RNPSOSD+4, RNPSOSD+6 |
| PSORENW("OLD | FILL DATE" , SUSDATEK+2 |
| PSORENW("PROVIDER" | CHKPRV+1, CHKPRV+3!, CHKPRV+4, CHKPRV+6, CHKPRV+7, CHKPRV+8!, CHKPRV+9, CHKPRV+11, CHKPRV+13, CHKPRV+14! , CHKPRV+15, CHKPRV+21, CHKPRV+23!, CHKPRV+24, CHKPRV+28 |
| >> PSORNW("FILL | DATE" , RENFDT+9 |
| PSORX | NPSOSD~ |
| PSORX("FILL D | ATE" , SUSDATE+2, SUSDATE+6*, SUSDATEK+3*, RENFDT+2, SDTX+2* |
| PSORX("IRXN" | NPSOSD+2, NPSOSD+4, NPSOSD+5 |
| PSORX("OLD FI | LL DATE" , SUSDATE+2*, SUSDATEK+2*, SUSDATEK+3, SUSDATEK+4!, RENFDT+2* |
| >> PSOSD | NPSOSD+6* |
| >> PSOSD( | NPSOSD+3, NPSOSD+4*, NPSOSD+5*, RNPSOSD+3, RNPSOSD+4*, RNPSOSD+5*, RNPSOSD+6!, RNPSOSD+8*, RNPSOSD+9* |
| PSOSTAT | STATUS~, STATUS+32*, STATUS+33 |
| PSOX | CHKPRV+11!*, CHKPRV+12, CHKPRV+26!*, CHKPRVX!, NEXT~, SUSDATE~, SUSDATEK~, RENFDT~ |
| PSOX("FILL DA | TE" , SUSDATE+1, SUSDATE+3*, SUSDATE+4*, SUSDATE+5, SUSDATEK+1*, RENFDT+1, RENFDT+3*, RENFDT+9*, SDTX+1 , GFDT+9* |
| PSOX("IRXN" | NEXT+1, NEXT+2, NEXT+3, NEXT+5, NEXT+13, NEXT+14, SUSDATE+4, ACP, RENFDT+5 |
| PSOX("OLD FIL | L DATE" , SUSDATE+1*, SUSDATEK+1, SUSDATEK+4!, RENFDT+1* |
| PSOX("RX0" | NEXT+1*, NEXT+7, NEXT+17, NEXT+19 |
| PSOX("RX2" | NEXT+2*, NEXT+4 |
| PSOX("RX3" | NEXT+3*, NEXT+6*, NEXT+9*, NEXT+16*, NEXT+21*, SUSDATE+3, SUSDATE+4, RENFDT+3, GFDT+7, GFDT+9 |
| PSOX1 | NEXT+4*, NEXT+6, NEXT+19, NEXTX+1! |
| PSOX2 | NEXT+15*, NEXT+16, NEXTX+1! |
| PSOY | NEXT+13*, NEXT+14*, NEXT+15, NEXTX+1! |
| PSOY1 | NEXT+13*, NEXT+14, NEXTX+1! |
| PSOY2 | NEXT+12*, NEXT+13*, NEXT+19, NEXTX+1! |
| PSOY3 | NEXT+18*, NEXT+21, NEXTX+1! |
| PSOY4 | NEXT+20*, NEXT+21, NEXTX+1! |
| RF | RENFDT+4~, RENFDT+7*, RENFDT+8*, GFDT+2, GFDT+7 |
| RFD | RENFDT+4~, GFDT+7*, GFDT+8 |
| RFN | RENFDT+4~, RENFDT+5*, RENFDT+7*, RENFDT+8, GFDT+1, GFDT+2, GFDT+3, GFDT+7 |
| RXY | RENFDT+4~, RENFDT+5*, RENFDT+6, RENFDT+7, RENFDT+8, GFDT+1, GFDT+3, GFDT+5 |
| >> SPEED | STATUS+2, STATUS+3, STATUS+5, STATUS+6, STATUS+9, STATUS+10, STATUS+13, STATUS+14, STATUS+17, STATUS+18 , STATUS+21, STATUS+22, STATUS+25, STATUS+26, STATUS+29, STATUS+34, STATUS+35, STATUS+36, STATUS+39 |
| >> STA | NPSOSD+1*, NPSOSD+2, RNPSOSD+1*, RNPSOSD+2 |
| >> STAT | NPSOSD+2*, NPSOSD+3, NPSOSD+4, NPSOSD+5, NPSOSD+6, RNPSOSD+2*, RNPSOSD+3, RNPSOSD+4, RNPSOSD+5, RNPSOSD+6 , RNPSOSD+8, RNPSOSD+9, RNPSOSD+10 |
| SUPN | RENFDT+4~, GFDT+5*, GFDT+6, GFDT+8 |
| U | CHKPRV+21 |
| >> VALMBCK | STATUS+3*, STATUS+6*, STATUS+10*, STATUS+14*, STATUS+18*, STATUS+22*, STATUS+26*, STATUS+29*, STATUS+36* |
| >> VALMSG | STATUS+3*, STATUS+6*, STATUS+10*, STATUS+14*, STATUS+18*, STATUS+22*, STATUS+26*, STATUS+29*, STATUS+36* |
| X | NEXT+9, NEXT+10!, NEXT+18, NEXT+20, NEXTX+1! |
| >> X1 | NEXT+6*, NEXT+16*, NEXT+19* |
| >> X2 | NEXT+7*, NEXT+17*, NEXT+19* |
| Y | SUSDATE+5*, SUSDATE+6!, SUSDATEK+2*!, SDTX+1*, SDTX+2! |