BPCRXDAY ; IHS/OIT/MJL - PROGRAM TO CALCULATE DEFAULT DAYS SUP ;
Source file <BPCRXDAY.m>
| Package | Total | Call Graph | 
|---|---|---|
| IHS VA Utilities | 1 | EN^XBVK | 
| Outpatient Pharmacy | 1 | SIG^PSOHELP | 
| Name | Comments | DBIA/ICR reference | 
|---|---|---|
| HTEXT | ;;THIS PART CHANGES 2ND PARTO FO SIG FOURTIMESDAILY=4 | |
| CHANGEN | ;CHANGE TEXT TO NUMBERS | |
| B | ;B ADDED 3/10/98 NEXT 7 LINES | |
| END | ;CLEAN UP | |
| CHANGEH | ;CHANGE TIME TO NUMBERS | |
| TRA | ||
| CHANGES | ;GOES LIKE THIS '1-2' GETS CHANGED TO '1 OR 2' | |
| DAY | ;CALCULATE THE DAYS SUPPLY | |
| CHANGER | ;GOES LIKE THIS '4 TO 6' GETS CHANGED TO '4 OR 6' | |
| TEXTF | ;;FIRST WORD;LAST WORD | |
| A | ||
| LOOP | ||
| TRTEXT | ;REPLACES SOME MORE STUFF | |
| FUZZY | ;CHANGES EVERY 4 TO 6 HOURS - EVERY 4 HOURS | |
| TSTEXT | ;REPLACES SOME MORE STUFF | |
| TRS | ||
| CHANGET | ;CHANGE TIME AROUND | |
| TTEXT | ;;CHANGE TIME AROUND | |
| KILLH | ;KILL VARIABLES | |
| NTEXT | ;;NUMBERS FOR TEXT | 
| Name | Line Occurrences | 
|---|---|
| Function Call: WRITE | 
 | 
| Function Call: WRITE | 
 | 
| Name | Line Occurrences (* Changed, ! Killed) | 
|---|---|
| ^%ZOSF("UPPERCASE" | CHANGEN+3 | 
| Name | Line Occurrences | 
|---|---|
| A | LOOP+1, LOOP+2, LOOP+3, LOOP+4 | 
| CHANGEH | BPCRXDAY+27 | 
| CHANGEN | BPCRXDAY+25 | 
| CHANGER | BPCRXDAY+22 | 
| CHANGES | BPCRXDAY+23 | 
| CHANGET | BPCRXDAY+26 | 
| DAY | BPCRXDAY+28 | 
| END | BPCRXDAY+29 | 
| FUZZY | BPCRXDAY+24 | 
| KILLH | LOOP+5 | 
| TRA | CHANGER+2 | 
| TRS | CHANGES+2 | 
| >> | Not killed explicitly | 
| * | Changed | 
| ! | Killed | 
| ~ | Newed | 
| Name | Field # of Occurrence | 
|---|---|
| >> C | TRA+11*, TRA+12, TRA+13, TRS+11*, TRS+12, TRS+13 | 
| CHECK | END+3!, A+14*, A+15, B+3*, B+4, FUZZY+5*, FUZZY+6, FUZZY+8 | 
| COMPARE | KILLH+1! | 
| COMPARE(2 | B+14*, B+16 | 
| >> CONVERT | TRA+10*, TRA+12*, TRA+13*, TRA+15, TRS+10*, TRS+12*, TRS+13*, TRS+15 | 
| >> CUT( | TRA+8*, TRS+8* | 
| DELIMIT | LOOP+1*, LOOP+2*, LOOP+3*, LOOP+4*, A+10, KILLH+1! | 
| FIND | END+3!, LOOP*, A+4, A+5*, A+6 | 
| FIRST | END+3!, LOOP*, A+4*, A+5, A+7, FUZZY+2*, FUZZY+5 | 
| I | END+2!, CHANGEN+8*, CHANGET+3*, B+13*, TRA*, TRA+2, TRA+3, TRS*, TRS+2, TRS+3 , FUZZY+2* | 
| J | END+2!, CHANGEN+13*, CHANGET+8*, TRA+1*, TRA+2, TRA+3, TRS+1*, TRS+2, TRS+3 | 
| K | END+2!, B+10*, TRA+6*, TRA+7, TRA+8, TRA+9, TRS+6*, TRS+7, TRS+8, TRS+9 | 
| LENGTH | B+9*, B+10, KILLH+1! | 
| LOOK | CHANGEN+9*, CHANGEN+11, CHANGEN+14, CHANGEN+17!, CHANGET+4*, CHANGET+6, CHANGET+9, CHANGET+12! | 
| LOOP | END+3!, LOOP+1*, LOOP+2*, LOOP+3*, LOOP+4* | 
| MANY | END+3!, LOOP+1*, LOOP+2*, LOOP+3*, LOOP+4* | 
| MULT | LOOP+1*, LOOP+2*, LOOP+3*, LOOP+4*, B+23, KILLH+1! | 
| NUMBER | CHANGEN+11*, CHANGEN+12, CHANGEN+13, CHANGEN+17!, CHANGET+6*, CHANGET+7, CHANGET+8, CHANGET+12! | 
| P | END+2!, A+13*, A+14, B+2*, B+3, FUZZY+4*, FUZZY+5 | 
| PART | END+2!, A+14*, A+17, B+3*, B+6, FUZZY+5*, FUZZY+8 | 
| PIECE | KILLH+1! | 
| PIECE(1 | A*, B+10*, B+19*, B+23 | 
| PIECE(2 | A*, B+16*, B+21*, B+23 | 
| >> PSOEXMX | CHANGEH+1*, B+23*, B+26, B+28, B+29* | 
| >> PSOEXMXT | B+26*, B+28*, DAY+1, DAY+2 | 
| >> PSOEXQTY | BPCRXDAY+14*, BPCRXDAY+15*, BPCRXDAY+16, DAY+2 | 
| >> PSOEXSIG | BPCRXDAY+8*, BPCRXDAY+10, CHANGEN+3*, CHANGEN+4*, CHANGEN+6, CHANGEN+16*, CHANGET+1, CHANGET+11*, LOOP, LOOP+1 , LOOP+2, LOOP+3, LOOP+4, A+7*, A+10, TRA+4, TRA+7, TRA+9, TRA+15*, TRS+4 , TRS+7, TRS+9, TRS+15*, FUZZY+6, FUZZY+8* | 
| >> PSONEW("QTY" | BPCRXDAY+15 | 
| >> PSONEW("SIG" | BPCRXDAY+7 | 
| >> PSORENW("QTY" | BPCRXDAY+14 | 
| >> PSORENW("SIG" | BPCRXDAY+6 | 
| PSOSIGS | END+3!, LOOP*, A+5, A+7 | 
| >> PSOZDAY | DAY+1*, DAY+2* | 
| Q | END+2!, A+12*, A+14, B+1*, B+3, FUZZY+3*, FUZZY+5 | 
| QUIT | END+2! | 
| QUIT(1 | CHANGEH+3*, B+25* | 
| QUIT(2 | CHANGEH+3*, B+13, B+16*, B+25* | 
| QUT | END+3!, LOOP+1, LOOP+2, LOOP+3, LOOP+4, B+28* | 
| REPLACE | CHANGEN+10*, CHANGEN+14, CHANGEN+17!, CHANGET+5*, CHANGET+9, CHANGET+12!, KILLH+1!, TRA+2*, TRA+4, TRA+7 , TRA+9, TRS+2*, TRS+4, TRS+7, TRS+9 | 
| REPLACE(2 | B+15*, B+16 | 
| REPLANEW | END+2!, TRA+3*, TRA+12, TRS+3*, TRS+12 | 
| >> SAVE( | TRA+7*, TRA+8, TRA+9*, TRA+12, TRA+13, TRS+7*, TRS+8, TRS+9*, TRS+12, TRS+13 | 
| SECOND | END+3!, LOOP*, A+6*, A+7, FUZZY+2*, FUZZY+5 | 
| SIG | BPCRXDAY+8, END+2! | 
| STRING | CHANGEN+6*, CHANGEN+11, CHANGEN+14*, CHANGEN+16, CHANGEN+17!, CHANGET+1*, CHANGET+6, CHANGET+9*, CHANGET+11, CHANGET+12! , KILLH+1! | 
| STRING(1 | A+10*, A+15, A+17*, B+4, B+6*, B+9, B+10 | 
| STRING(2 | A+10*, B+16 | 
| TEST | B+10*, KILLH+1! | 
| TEXT | END+2!, CHANGEN+8*, CHANGEN+9, CHANGEN+10, CHANGEN+17!, CHANGET+3*, CHANGET+4, CHANGET+5, CHANGET+12!, B+13* , B+14, B+15, CHANGER+2*, CHANGES+2*, FUZZY+2* | 
| TIMES | END+2!, TRA+4*, TRA+5, TRA+6, TRA+11, TRS+4*, TRS+5, TRS+6, TRS+11 | 
| TR | END+2!, CHANGER+2*, TRA+2, CHANGES+2*, TRS+2 | 
| TRTO | END+2!, CHANGER+2*, TRA+3, CHANGES+2*, TRS+3 | 
| X | BPCRXDAY+6*, BPCRXDAY+7*, BPCRXDAY+8*, END+2!, CHANGEN+2~, CHANGEN+3* | 
| Y | CHANGEN+2~, CHANGEN+3 | 
| Z | END+2!, CHANGER+2*, CHANGES+2* | 
| Name | Field # of Occurrence | 
|---|---|
| $T(HTEXT+I | B+13 | 
| $T(NTEXT+I | CHANGEN+8 | 
| $T(TEXTF+I | FUZZY+2 | 
| $T(TRTEXT+Z | CHANGER+2 | 
| $T(TSTEXT+Z | CHANGES+2 | 
| $T(TTEXT+I | CHANGET+3 |