SCRPW40 ;RENO/KEITH - Diagnosis/Procedure Frequency Report ;06/22/99
Source file <SCRPW40.m>
| Package | Total | Call Graph | 
|---|---|---|
| Scheduling | 5 | $$DIVA^SCRPW17 DISP0^SCRPW23 START^SCRPW401 ($$XY,END,SUBT,TITL)^SCRPW50 ($$GETOE,GETCPT,GETDX)^SDOE | 
| VA Fileman | 3 | ^%DT NOW^%DTC ^DIR | 
| DRG Grouper | 2 | $$ICDDX^ICDCODE $$CPT^ICPTCOD | 
| Kernel | 2 | $$S^%ZTLOAD EN^XUTMDEVQ | 
| Registration | 1 | $$PRIM^VASITE | 
| Name | Comments | DBIA/ICR reference | 
|---|---|---|
| PRPRT | ||
| DIV() | ;Check division | |
| STOP | ;Check for stop task request | |
| DX1(SDIV) | ||
| DPRT(SDIV) | ;Print report for a division | |
| DXPRT | ;Print diagnosis list | |
| PRP2 | ||
| DX | ;Get diagnoses | |
| PRP1 | ;S SDI=0 F  S SDI=$O(^TMP("SCRPW",$J,SDIV,"PROC",2,SDORD,SDI)) Q:'SDI!SDOUT!(SDCT>(SD("FREQ")-1))  S SDPR0=$G(^ICPT(SDI,0)) I $L(SDPR0) S SDPRC=$P(SDPR0,U),SDPRN=$P(SDPR0,U,2) D PRP2 | |
| DXHD | ;Print diagnosis subheader | |
| HDR | ;Print report header | |
| ORDV() | ||
| PROC1(SDIV) | ||
| PRHD | ;Print procedure subheader | |
| START | ;Print report | |
| DHDR(SDI,SDT) | ;Set up division subheaders | |
| EVAL | ;Evaluate encounter | |
| DXP1 | ||
| DXP2 | ||
| EXIT | ||
| EDT | ||
| ORD | ;Determine list order | |
| PROC | ;Get procedures | 
| Name | Field # of Occurrence | 
|---|---|
| ^%DT | SCRPW40+10, EDT | 
| NOW^%DTC | START+4 | 
| $$S^%ZTLOAD | STOP+1 | 
| ^DIR | EDT+5, EDT+8, EXIT, HDR+1 | 
| $$ICDDX^ICDCODE | DXP1 | 
| $$CPT^ICPTCOD | PRP1+3 | 
| $$DIVA^SCRPW17 | SCRPW40+8 | 
| DISP0^SCRPW23 | START+10 | 
| START^SCRPW401 | PRP2+9 | 
| $$XY^SCRPW50 | HDR+3, HDR+4 | 
| END^SCRPW50 | EXIT+2 | 
| SUBT^SCRPW50 | SCRPW40+9, EDT+3 | 
| TITL^SCRPW50 | SCRPW40+7 | 
| $$GETOE^SDOE | START+2 | 
| GETCPT^SDOE | PROC+1 | 
| GETDX^SDOE | DX+1 | 
| $$PRIM^VASITE | START+8 | 
| EN^XUTMDEVQ | EDT+10 | 
| 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 | 
 | 
| 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 | 
 | 
| Name | Line Occurrences (* Changed, ! Killed) | 
|---|---|
| ^DD("DD" | START+4, START+5 | 
| ^DG(40.8 - [#40.8] | START+9, DHDR+8 | 
| ^SCE("B" | START+2 | 
| ^TMP("SCRPW" | START+1!, START+3, START+9, START+10, START+12, DX1+1*, PROC1+1*, PROC1+2*, PROC1+10*, PROC1+11* , ORD+1*, ORDV, DPRT+2, DPRT+3, DPRT+4, DXPRT+1, DXP1, DXP2, PRPRT, PRP1+2 , PRP2, PRP2+9, DHDR+8 | 
| Name | Line Occurrences | 
|---|---|
| $$DIV | START+2 | 
| $$ORDV | ORD+1 | 
| DHDR | START+10, DPRT+2 | 
| DPRT | START+11, START+13 | 
| DX | EVAL+2 | 
| DX1 | DX+2 | 
| DXHD | DXPRT+1, DXPRT+2, DXP2+1 | 
| DXP1 | DXPRT+1 | 
| DXP2 | DXP1 | 
| DXPRT | DPRT+3 | 
| EDT | EDT+1 | 
| EVAL | START+2 | 
| EXIT | SCRPW40+8, SCRPW40+10, EDT, EDT+5, EDT+8, EDT+10, START+3, START+4, START+10, START+13 | 
| HDR | START+10, DPRT+2, DXPRT+1, DXPRT+2, DXP2+1, PRPRT, PRPRT+1, PRP2+1 | 
| ORD | START+3 | 
| PRHD | PRPRT, PRPRT+1, PRP2+1 | 
| PROC | EVAL+2 | 
| PROC1 | PROC+2 | 
| PRP1 | PRPRT | 
| PRP2 | PRP1+7 | 
| PRPRT | DPRT+4 | 
| STOP | START+4, EVAL+1, HDR+2 | 
| >> | Not killed explicitly | 
| * | Changed | 
| ! | Killed | 
| ~ | Newed | 
| Name | Field # of Occurrence | 
|---|---|
| % | START+4, EXIT+1! | 
| %DT | SCRPW40+6~, SCRPW40+10*, EXIT+1! | 
| %DT("A" | SCRPW40+10*, EDT* | 
| %DT(0 | SCRPW40+10* | 
| C | EXIT+1!, DPRT+2*, DXPRT+3, DXPRT+4, DXP2+1, PRPRT*, PRPRT+2, PRP2+4, PRHD+1, DXHD+1 , DXHD+2 | 
| CPTINFO | PRP1+1~, PRP1+3*, PRP1+4, PRP1+5, PRP1+6 | 
| DIR | SCRPW40+6~, EDT+4!, EDT+7!, EXIT~, EXIT+1!, HDR+1~ | 
| DIR("?" | EDT+4*, EDT+7* | 
| DIR("A" | EDT+4*, EDT+7* | 
| DIR("B" | EDT+7* | 
| DIR(0 | EDT+4*, EDT+7*, EXIT*, HDR+1* | 
| DIVN | EXIT+1! | 
| DTOUT | EDT+5, EDT+8, EXIT+1! | 
| DUOUT | EDT+5, EDT+8, EXIT+1! | 
| IOF | HDR+3 | 
| IOM | START+4, START+10, DPRT+2, PRPRT, HDR+5, HDR+6 | 
| IOSL | DXPRT+2, DXP2+1, PRPRT+1, PRP2+1 | 
| IOST | START+10, EXIT, HDR+1, HDR+3 | 
| LINEFLAG | SCRPW40+6~, PRP2+3, PRP2+5*, PRHD+1* | 
| SD | SCRPW40+6~, EXIT+1! | 
| SD("BDT" | SCRPW40+11*, EDT+1, START+2, START+5 | 
| SD("EDT" | EDT+2*, START+2, START+5 | 
| SD("FREQ" | EDT+9*, START+6, DXPRT+1, DXP1, PRPRT, PRP1+2 | 
| SD("TYPE" | EDT+6*, START+5, START+6, EVAL+2 | 
| SDCT | EXIT+1!, DXPRT+1*, DXP1, DXP2+1*, PRPRT*, PRP1+2, PRP2+1* | 
| SDDIV | SCRPW40+6~, SCRPW40+8, START+1, START+8, START+9, EXIT+1!, DIV+1, DHDR+3, DHDR+4, DHDR+7 | 
| SDDIV( | START+1, START+7, DIV+1 | 
| SDDIV("" | START+1 | 
| SDDIV("MULT" | START+1*, START+12*, START+13, DX+2, PROC+2 | 
| SDDX | EXIT+1!, DX1*, DX1+1 | 
| SDDX( | DXP2*, DXP2+2 | 
| SDDX("PRI" | DXP2+1 | 
| SDDX("QTY" | DXP2+1 | 
| SDDX("SEC" | DXP2+1 | 
| SDDX0 | EXIT+1!, DXP1* | 
| SDDXC | EXIT+1!, DXP1*, DXP2+1 | 
| SDDXN | EXIT+1!, DXP1*, DXP2+1 | 
| SDFF | START+4*, EXIT+1!, HDR+1, HDR+3, HDR+6* | 
| SDI | START+1*, START+9*, START+12*, EXIT+1!, DX+1~, DX+2*, DX1, PROC+1~, PROC+2*, PROC1 , PROC1+7, PROC1+8, ORD+1*, ORDV, DXP1*, DXP2, PRP1+2*, PRP1+3, PRP2, PRP2+9 , HDR+5~*, DHDR~, DHDR+3, DHDR+5*, DHDR+8* | 
| SDII | EXIT+1!, ORD+1*, ORDV, DXP2*, DXP2+2*, PRP2*, PRP2+6* | 
| SDIV | START+3*, START+7*, START+10*, START+11*, START+13*, EXIT+1!, EVAL+2*, DX+2, DX1~, DX1+1 , PROC+2, PROC1~, PROC1+1, PROC1+2, PROC1+10, PROC1+11, ORD+1, ORDV, DPRT~, DPRT+2 , DPRT+3, DPRT+4, DXPRT+1, DXP1, DXP2, PRPRT, PRP1+2, PRP2, PRP2+9, DHDR+3 , DHDR+4, DHDR+7, DHDR+8~* | 
| SDIV( | START+7*, START+8*, START+9*, START+11, DHDR+5 | 
| SDIVN | START+11*, EXIT+1!, DHDR+3, DHDR+4~*, DHDR+5* | 
| SDLINE | START+4*, EXIT+1!, DXPRT+3, PRPRT+2, PRHD+1, DXHD+2, HDR+5, HDR+6 | 
| SDLIST | EXIT+1!, DX+1~, PROC+1~ | 
| SDLIST( | DX+2, DX1, PROC+2, PROC1, PROC1+7, PROC1+8 | 
| SDMOD | PROC1+5~, PROC1+8*, PROC1+9, PROC1+10, PROC1+11 | 
| SDMODN | PROC1+5~, PROC1+6*, PROC1+7*, PROC1+8 | 
| SDOE | START+2*, EXIT+1!, DX+1, PROC+1 | 
| SDOE0 | START+2*, EXIT+1!, DIV+1, EVAL+2 | 
| SDORD | EXIT+2!, DXPRT+1*, DXP1, PRPRT*, PRP1+2 | 
| SDOUT | SCRPW40+8*, SCRPW40+10*, EDT*, EDT+5*, EDT+8*, EDT+10*, START+1*, START+2, START+3, START+4 , START+10, START+11, START+13, EXIT, EXIT+2!, STOP+1*, EVAL+1, DPRT+2, DPRT+3, DXPRT+1 , DXPRT+2, DXP1, DXP2+1, PRPRT, PRPRT+1, PRP1+2, PRP2+1, PRHD+1, DXHD+1, HDR+1* , HDR+2 | 
| SDPAGE | START+4*, EXIT+2!, DPRT+2*, DXPRT+1*, PRPRT*, HDR+6* | 
| SDPBDT | START+5*, EXIT+2!, HDR+6 | 
| SDPEDT | START+5*, EXIT+2!, HDR+6 | 
| SDPNOW | START+4*, EXIT+2!, HDR+6 | 
| SDPR | EXIT+2! | 
| SDPR( | PRP2*, PRP2+6 | 
| SDPR("ENC" | PRP2+4 | 
| SDPR("QTY" | PRP2+4 | 
| SDPR0 | EXIT+2! | 
| SDPRC | EXIT+2!, PRP1+5*, PRP2+4 | 
| SDPRN | EXIT+2!, PRP1+6*, PRP2+4 | 
| SDPROC | EXIT+2!, PROC1*, PROC1+1, PROC1+2, PROC1+10, PROC1+11 | 
| SDPS | EXIT+2!, DX1*, DX1+1* | 
| SDQT | EXIT+2!, PROC1*, PROC1+2, PROC1+11 | 
| SDSTOP | START+1*, EXIT+2!, EVAL+1* | 
| SDT | START+2*, START+10, EXIT+2!, DPRT+2, DHDR~ | 
| SDT( | HDR+5, DHDR+3*, DHDR+5*, DHDR+8* | 
| SDT(1 | START+5* | 
| SDT(2 | START+6* | 
| SDTOT | EXIT+2!, DXPRT+1~, PRPRT~ | 
| SDTOT( | DXP2+2*, PRP2+6* | 
| SDTOT("ENC" | PRPRT+2 | 
| SDTOT("PRI" | DXPRT+4 | 
| SDTOT("QTY" | DXPRT+4, PRPRT+2 | 
| SDTOT("SEC" | DXPRT+4 | 
| SDX | SCRPW40+6~, START+9*, START+10*, EXIT+2!, DPRT+2* | 
| U | START+1, START+2, START+8, START+9, DIV+1, EVAL+2, DX1, PROC1, DXP1, PRP1+5 , PRP1+6, DHDR+3, DHDR+4, DHDR+7, DHDR+8 | 
| X | SCRPW40+6~, EXIT+2! | 
| Y | SCRPW40+6~, SCRPW40+10, SCRPW40+11, EDT, EDT+1, EDT+2, EDT+6, EDT+9, START+4*, START+5* , EXIT+2!, HDR+1 | 
| >> ZTQUEUED | STOP+1 | 
| ZTSAVE | EDT+10~ | 
| ZTSAVE("SD(" | EDT+10* | 
| ZTSAVE("SDDIV" | EDT+10* | 
| ZTSAVE("SDDIV(" | EDT+10* | 
| >> ZTSTOP | STOP+1* |