LRPXCHK ;SLC/STAFF - Lab PXRMINDX Index Validation ;3/30/04 12:01
Source file <LRPXCHK.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 |
Package | Total | Caller Graph |
---|---|---|
Lab Service | 2 | LRPXCHKA LRPXCHKM |
Name | Comments | DBIA/ICR reference |
---|---|---|
PATS | ; select patients for index check
|
|
DATES | ; check indexes for a date range of patient collections
|
|
CHECK(REPAIR) | ;
|
|
ALL | ; check all patient indexes
; this takes a very long time ; to be used in small test accounts ; START and STOP determine range of DFNs to check |
|
CHKPAT(DFN) | ; from LRLOG
; find bad nodes, ; store as ^TMP("LRLOG",$J,DFN,DATE,ITEM,INDEX)=NODE ; only when ^TMP("LRLOG PATS",$J) is present ; if ^TMP("LRLOG PATS",$J) is not present, write to screen |
|
INTEG(DFN) | ; make sure "PI", "IP", and "PDI" are consistent
|
|
CHKLR(DFN) | ; go thru "PI" to make sure ^LR is consistent
|
|
CHKPI(DFN,LRDFN) | ; go thru ^LR to make sure "PI" is consistent
|
|
TMPCHK(DFN,DATE,ITEM,NODE) | ;
|
|
BAD(INDEX,DFN,ITEM,DATE,NODE) | ; write error to screen, collect in global
|
|
CLEAN | ; clear tmp globals
; "LRLOG" collects invalid nodes, "LRLOG PATS" are patients checked |
|
REFVAL(REF) | ; $$(reference location in ^LR) -> if ref exists 1, else 0
|
|
REPAIR | ; correct invalid indexes
; kill off bad indexes ; reset all indexes at date of bad index |
|
CH(DFN,LRDFN,DATE,LRIDT) | ;
|
|
MICRO(DFN,LRDFN,DATE,LRIDT) | ;
|
|
AP(DFN,LRDFN,DATE,LRIDT,SUB) | ;
|
|
AU(DFN,LRDFN,DATE) | ;
|
|
GETREP(REPAIR,ERR) | ;
; asks to repair indexes |
Name | Field # of Occurrence |
---|---|
^DIR | GETREP+7 |
KLAB^LRPX | REPAIR+19 |
SLAB^LRPX | CH+11 |
$$VERIFIED^LRPXAPI | CH+2 |
$$DFN^LRPXAPIU | DATES+14 |
$$DOD^LRPXAPIU | REPAIR+7 |
$$LRDFN^LRPXAPIU | CHECK+5, ALL+13, CHKPAT+7, REPAIR+6 |
$$LRIDT^LRPXAPIU | DATES+5, DATES+6, REPAIR+10 |
$$TEST^LRPXAPIU | CHKPI+9, CH+9 |
GETDATE^LRPXAPPU | DATES+3 |
GETPT^LRPXAPPU | PATS+3 |
AP^LRPXCHKA | CHKPI+14 |
MI^LRPXCHKM | CHKPI+13 |
AP^LRPXRM | AP+4 |
AUTOPSY^LRPXRM | AU+8 |
MICRO^LRPXRM | MICRO+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 |
|
Routine Call |
|
Name | Line Occurrences (* Changed, ! Killed) |
---|---|
^DPT - [#2] | ALL+12 |
^LR - [#63] | DATES+9, DATES+13, CHKPAT+9, CH+5, CH+7, MICRO+2, AP+2, AU+1, AU+2, AU+4 , AU+5, AU+6 |
^PXRMINDX(63 | CHKPAT+10, CHKPAT+11, CHKPAT+13, CHKPAT+14, CHKPAT+15, CHKPI+12, TMPCHK+1, MICRO+3, AP+3, AU+7 |
^TMP("LRLOG PATS" | PATS+4*, PATS+6, DATES+16*, CHECK+4, CLEAN+3! |
^TMP("LRLOG" | CHECK+9, BAD+2*, CLEAN+2!, REPAIR+5, REPAIR+9, REPAIR+13, REPAIR+15, REPAIR+16 |
^TMP("LRPX" | MICRO+1!, MICRO+2*, MICRO+3*, MICRO+5!, AP+1!, AP+2*, AP+3*, AP+5!, AU+3!, AU+4* , AU+5*, AU+6*, AU+7*, AU+9! |
^TMP("LRPXCHK" | CHKPAT+6!, CHKPAT+9*, CHKPAT+10*, CHKPAT+11*, CHKPAT+15*, CHKPAT+19!, INTEG+3, INTEG+5, INTEG+7, INTEG+8 , INTEG+10, INTEG+13, INTEG+15, INTEG+17, INTEG+18, INTEG+20, INTEG+23, INTEG+25, INTEG+27, INTEG+28 , INTEG+30, CHKLR+3, CHKLR+5, CHKLR+7, CHKPI+3, CHKPI+4, CHKPI+8 |
Name | Line Occurrences |
---|---|
$$REFVAL | CHKLR+8 |
AP | REPAIR+24 |
AU | REPAIR+25 |
BAD | INTEG+9, INTEG+11, INTEG+19, INTEG+21, INTEG+29, INTEG+31, CHKLR+8, CHKPI+12, TMPCHK+1 |
CH | REPAIR+22 |
CHECK | PATS+8, DATES+19 |
CHKLR | CHKPAT+17 |
CHKPAT | CHECK+6, ALL+14 |
CHKPI | CHKPAT+18 |
CLEAN | PATS+2, PATS+9, DATES+2, DATES+20, ALL+6, ALL+16 |
GETREP | PATS+7, DATES+4, ALL+8 |
INTEG | CHKPAT+16 |
MICRO | REPAIR+23 |
REPAIR | CHECK+13, ALL+15 |
Name | Field # of Occurrence |
---|---|
^("AU" | AU+2 |
>> | Not killed explicitly |
* | Changed |
! | Killed |
~ | Newed |
Name | Field # of Occurrence |
---|---|
CNT | DATES+1~, DATES+7*, DATES+17*, DATES+18, CHECK+1~, CHECK+7*, CHECK+10*, CHECK+11, CHECK+12 |
DAT | CH+1~, CH+3*, CH+6 |
DATE | INTEG+1~, INTEG+2*, INTEG+3*, INTEG+5, INTEG+7, INTEG+8, INTEG+9, INTEG+10, INTEG+11, INTEG+14* , INTEG+15*, INTEG+17, INTEG+18, INTEG+19, INTEG+20, INTEG+21, INTEG+24*, INTEG+25*, INTEG+27, INTEG+28 , INTEG+29, INTEG+30, INTEG+31, CHKLR+1~, CHKLR+4*, CHKLR+5*, CHKLR+7, CHKLR+8, CHKPI+1~, CHKPI+5* , CHKPI+12, TMPCHK~, TMPCHK+1, BAD~, BAD+1, BAD+2, REPAIR+3~, REPAIR+8*, REPAIR+9*, REPAIR+10 , REPAIR+13, REPAIR+15, REPAIR+16, REPAIR+19, REPAIR+22, REPAIR+23, REPAIR+24, REPAIR+25, CH~, CH+11 , MICRO~, MICRO+3, MICRO+4, AP~, AP+3, AP+4, AU~, AU+7 |
DATE1 | DATES+1~, DATES+3, DATES+5 |
DATE2 | DATES+1~, DATES+3, DATES+6 |
DFN | PATS+1~, PATS+3, PATS+4, DATES+1~, DATES+14*, DATES+15, DATES+16, CHECK+1~, CHECK+3*, CHECK+4* , CHECK+5, CHECK+6, CHECK+8*, CHECK+9*, ALL+5~, ALL+11*, ALL+12*, ALL+13, ALL+14, CHKPAT~ , CHKPAT+7, CHKPAT+10, CHKPAT+11, CHKPAT+14, CHKPAT+15, CHKPAT+16, CHKPAT+17, CHKPAT+18, INTEG~, INTEG+3 , INTEG+5, INTEG+7, INTEG+8, INTEG+9, INTEG+10, INTEG+11, INTEG+13, INTEG+15, INTEG+17, INTEG+18 , INTEG+19, INTEG+20, INTEG+21, INTEG+25, INTEG+27, INTEG+28, INTEG+29, INTEG+30, INTEG+31, CHKLR~ , CHKLR+3, CHKLR+5, CHKLR+7, CHKLR+8, CHKPI~, CHKPI+12, CHKPI+13, CHKPI+14, TMPCHK~, TMPCHK+1 , BAD~, BAD+1, BAD+2, REPAIR+3~, REPAIR+4*, REPAIR+5*, REPAIR+6, REPAIR+7, REPAIR+9, REPAIR+13 , REPAIR+15, REPAIR+16, REPAIR+19, REPAIR+22, REPAIR+23, REPAIR+24, REPAIR+25, CH~, CH+11, MICRO~ , MICRO+3, MICRO+4, AP~, AP+3, AP+4, AU~, AU+7 |
DIR | GETREP+2~!, GETREP+7! |
DIR("A" | GETREP+5* |
DIR("B" | GETREP+6* |
DIR(0 | GETREP+4* |
DIRUT | GETREP+2~ |
DOD | REPAIR+3~, REPAIR+7*, REPAIR+25 |
DTOUT | GETREP+2~, GETREP+8 |
ERR | PATS+1~, PATS+3, PATS+7, DATES+3, DATES+4, ALL+5~, ALL+8, GETREP~, GETREP+3*, GETREP+8* |
INDEX | BAD~, BAD+1, BAD+2, REPAIR+3~, REPAIR+14*, REPAIR+15*, REPAIR+16 |
ITEM | CHKPAT+5~, CHKPAT+12*, CHKPAT+13*, CHKPAT+14, CHKPAT+15, INTEG+1~, INTEG+4*, INTEG+5*, INTEG+7, INTEG+8 , INTEG+9, INTEG+10, INTEG+11, INTEG+12*, INTEG+13*, INTEG+15, INTEG+17, INTEG+18, INTEG+19, INTEG+20 , INTEG+21, INTEG+22*, INTEG+23*, INTEG+25, INTEG+27, INTEG+28, INTEG+29, INTEG+30, INTEG+31, CHKLR+1~ , CHKLR+2*, CHKLR+3*, CHKLR+5, CHKLR+7, CHKLR+8, CHKPI+1~, CHKPI+9*, CHKPI+10, CHKPI+12, TMPCHK~ , TMPCHK+1, BAD~, BAD+1, BAD+2, REPAIR+3~, REPAIR+12*, REPAIR+13*, REPAIR+15, REPAIR+16, REPAIR+19 |
LRDFN | DATES+1~, DATES+8*, DATES+9*, DATES+13, DATES+14, CHKPAT+5~, CHKPAT+7*, CHKPAT+8, CHKPAT+9, CHKPAT+18 , CHKPI~, CHKPI+3, CHKPI+4, CHKPI+8, CHKPI+11, CHKPI+13, CHKPI+14, REPAIR+6*, REPAIR+22, REPAIR+23 , REPAIR+24, REPAIR+25, CH~, CH+2, CH+3, CH+5, CH+7, MICRO~, MICRO+2, MICRO+4 , AP~, AP+2, AP+4, AU~, AU+1, AU+2, AU+4, AU+5, AU+6, AU+8 |
LRDN | CHKPI+1~, CHKPI+7*, CHKPI+8*, CHKPI+9, CHKPI+11, CH+1~, CH+4*, CH+5*, CH+6, CH+7 , CH+9 |
LRIDT | DATES+1~, DATES+12*, DATES+13*, CHKPI+1~, CHKPI+2*, CHKPI+3*, CHKPI+4, CHKPI+8, CHKPI+11, REPAIR+10* , REPAIR+22, REPAIR+23, REPAIR+24, CH~, CH+2, CH+3, CH+5, CH+7, MICRO~, MICRO+2 , MICRO+4, AP~, AP+2, AP+4 |
NODE | INTEG+1~, INTEG+6*, INTEG+7*, INTEG+8, INTEG+9, INTEG+10, INTEG+11, INTEG+16*, INTEG+17*, INTEG+18 , INTEG+19, INTEG+20, INTEG+21, INTEG+26*, INTEG+27*, INTEG+28, INTEG+29, INTEG+30, INTEG+31, CHKLR+1~ , CHKLR+6*, CHKLR+7*, CHKLR+8, CHKPI+1~, CHKPI+11*, CHKPI+12, TMPCHK~, TMPCHK+1, BAD~, BAD+1 , BAD+2, REPAIR+3~, REPAIR+16*, REPAIR+17, REPAIR+18, REPAIR+19, CH+1~, CH+6*, CH+11 |
OK | DATES+1~, DATES+10*, DATES+11, DATES+13, DATES+17* |
REF | REFVAL~, REFVAL+2, REFVAL+3, REFVAL+5*, REFVAL+6*, REFVAL+7*, REFVAL+8 |
REPAIR | PATS+1~, PATS+7, PATS+8, DATES+1~, DATES+4, DATES+19, CHECK~, CHECK+2*, CHECK+13, ALL+5~ , ALL+8, ALL+15, REPAIR+3~!, REPAIR+11!, GETREP~, GETREP+3*, GETREP+9* |
REPAIR( | REPAIR+18*, REPAIR+21 |
START | DATES+1~, DATES+6*, DATES+12, ALL+5~, ALL+9*, ALL+11 |
STOP | DATES+1~, DATES+5*, DATES+13, ALL+5~, ALL+10*, ALL+12 |
SUB | DATES+1~, DATES+11*, DATES+13, REFVAL+1~, REFVAL+3*, REFVAL+4*, REFVAL+5, REPAIR+20*, REPAIR+21*, REPAIR+22 , REPAIR+23, REPAIR+24, AP~, AP+2, AP+4 |
TEMP | CH+1~, CH+7*, CH+8 |
TEST | CH+1~, CH+8*, CH+9*, CH+10, CH+11 |
U | CHKPI+6, CH+8, AU+2, GETREP+8 |
X | GETREP+2~ |
Y | GETREP+2~, GETREP+8, GETREP+9 |
ZERO | CHKPI+1~, CHKPI+4*, CHKPI+5, CHKPI+6 |