[613] | 1 | SCRPI01A ;ALB/SCK - IEMM REPORT OF INCOMPLETE ENCOUNTERS PRINT ; 6/24/97
|
---|
| 2 | ;;5.3;Scheduling;**66**;AUG 13, 1993
|
---|
| 3 | Q
|
---|
| 4 | PRINT ; Begin printing report
|
---|
| 5 | ; Variables
|
---|
| 6 | ; PAGE - Page Number
|
---|
| 7 | ; SDIV - Division Name
|
---|
| 8 | ; SDCLN - Clinic Name
|
---|
| 9 | ; SDNAME - Patient Name
|
---|
| 10 | ; SDT - Encounter Date
|
---|
| 11 | ; SCABORT - Abort report flag
|
---|
| 12 | ;
|
---|
| 13 | N DASH,DBLDASH,PAGE,SDIV,SDCLN,SDNAME,SDT,SCABORT,NONAME
|
---|
| 14 | ;
|
---|
| 15 | S $P(DASH,"-",IOM-1)="",$P(DBLDASH,"=",IOM-1)=""
|
---|
| 16 | S PAGE=0,SDIV=""
|
---|
| 17 | ;
|
---|
| 18 | I '$D(^TMP("SCRPI ERR",$J)) D HDR1 Q
|
---|
| 19 | ;
|
---|
| 20 | F S SDIV=$O(^TMP("SCRPI ERR",$J,SDIV)) Q:SDIV']"" D Q:$G(SCABORT)
|
---|
| 21 | . S SDCLN=""
|
---|
| 22 | . F S SDCLN=$O(^TMP("SCRPI ERR",$J,SDIV,SDCLN)) Q:SDCLN']"" D Q:$G(SCABORT)
|
---|
| 23 | .. D HDR(SDIV,SDCLN)
|
---|
| 24 | .. Q:$G(SCABORT)
|
---|
| 25 | .. S SDNAME=""
|
---|
| 26 | .. F S SDNAME=$O(^TMP("SCRPI ERR",$J,SDIV,SDCLN,SDNAME)) Q:SDNAME']"" D Q:$G(SCABORT)
|
---|
| 27 | ... S SDT="",NONAME=0
|
---|
| 28 | ... F S SDT=$O(^TMP("SCRPI ERR",$J,SDIV,SDCLN,SDNAME,SDT)) Q:'SDT D Q:$G(SCABORT)
|
---|
| 29 | .... S SDER=""
|
---|
| 30 | .... F S SDER=$O(^TMP("SCRPI ERR",$J,SDIV,SDCLN,SDNAME,SDT,SDER)) Q:'SDER D LINE(^TMP("SCRPI ERR",$J,SDIV,SDCLN,SDNAME,SDT,SDER,0)) Q:$G(SCABORT)
|
---|
| 31 | ;
|
---|
| 32 | D SELPAGE
|
---|
| 33 | Q
|
---|
| 34 | ;
|
---|
| 35 | LINE(SDTMP) ; Print formatted line of the report. Check if task has been stopped by user.
|
---|
| 36 | ; Set abort flag to quit if stopped.
|
---|
| 37 | ; Input
|
---|
| 38 | ; SDTMP - formatted line to print
|
---|
| 39 | ;
|
---|
| 40 | ; Output
|
---|
| 41 | ; SCABORT - 1 if user aborts report printing
|
---|
| 42 | ;
|
---|
| 43 | ; Variables
|
---|
| 44 | ; SCERR - Error Code form #409.76
|
---|
| 45 | ; SCERR1 - Error Description from #409.76
|
---|
| 46 | ;
|
---|
| 47 | N X,X1,X2,SCERR,SCERR1,DFN
|
---|
| 48 | ;
|
---|
| 49 | ; ** if task has been stopped, set abort flag and quit.
|
---|
| 50 | I $$S^%ZTLOAD D Q
|
---|
| 51 | . S SCABORT=1
|
---|
| 52 | . W !!,"Report stopped by user"
|
---|
| 53 | ;
|
---|
| 54 | I $Y>(IOSL-5) D HDR(SDIV,SDCLN)
|
---|
| 55 | ;
|
---|
| 56 | ; ** Check that error is still around and has not been corrected.
|
---|
| 57 | Q:'$G(^SD(409.75,SDER,0))
|
---|
| 58 | S SCERR=^SD(409.76,$P(^SD(409.75,SDER,0),U,2),0)
|
---|
| 59 | S SCERR1=^SD(409.76,$P(^SD(409.75,SDER,0),U,2),1)
|
---|
| 60 | ;
|
---|
| 61 | S DFN=$P(SDTMP,U)
|
---|
| 62 | D PID^VADPT6
|
---|
| 63 | W !,$S('NONAME:$E(SDNAME,1,25),1:" "),?27,$S('NONAME:VA("BID"),1:" ")
|
---|
| 64 | W ?33,$S($P(SDTMP,U,3)]"":$P(SDTMP,U,3),1:" ")," "
|
---|
| 65 | W $$FMTE^XLFDT(SDT,"2FP"),?55,$S($P(SCERR,U,2)="V":"VISTA",$P(SCERR,U,2)="N":"NPCD ",1:"UNK "),?62,$P(SCERR,U)
|
---|
| 66 | ;
|
---|
| 67 | ; ** Parse out error description to fit report. If description length >50, then
|
---|
| 68 | ; call parse procedure to break description into two lines.
|
---|
| 69 | S X=$P(SCERR1,U)
|
---|
| 70 | I $L(X)<50 D
|
---|
| 71 | . W ?68,X
|
---|
| 72 | E D
|
---|
| 73 | . K X1,X2
|
---|
| 74 | . D PARSE^SCRPIUT1(X,.X1,.X2,45,51)
|
---|
| 75 | . W ?68,X1,!?68,X2
|
---|
| 76 | S NONAME=1
|
---|
| 77 | K VA
|
---|
| 78 | Q
|
---|
| 79 | ;
|
---|
| 80 | HDR(SDIV,SDCLN) ; Print report header, if abort flag is set, then quit
|
---|
| 81 | ; Input
|
---|
| 82 | ; SDIV - Division Name
|
---|
| 83 | ; SDCLN - Clinic Name
|
---|
| 84 | ;
|
---|
| 85 | ; Variables
|
---|
| 86 | ; SDL - Print line
|
---|
| 87 | ;
|
---|
| 88 | N SDL,X
|
---|
| 89 | ;
|
---|
| 90 | I 'PAGE,IOST?1"C-".E W @IOF
|
---|
| 91 | I PAGE,IOST?1"C-".E D Q:$G(SCABORT)
|
---|
| 92 | . S DIR(0)="E" D ^DIR K DIR S SCABORT='+$G(Y)
|
---|
| 93 | . W @IOF
|
---|
| 94 | E D
|
---|
| 95 | . I PAGE W @IOF
|
---|
| 96 | ;
|
---|
| 97 | S PAGE=PAGE+1
|
---|
| 98 | W !?2,"Date: ",$$FDATE^VALM1($$DT^XLFDT),?((IOM/2)-22),"Incomplete Encounter Management Error Listing",?(IOM-13),"Page: ",PAGE
|
---|
| 99 | ;
|
---|
| 100 | S X="Division: "_$S($G(SDIV)]"":SDIV,1:" ---")
|
---|
| 101 | D CTR^SCRPIUT1(.X,IOM)
|
---|
| 102 | W !,X
|
---|
| 103 | ;
|
---|
| 104 | S X="Clinic: "_$S($G(SDCLN)]"":SDCLN,1:" ---")
|
---|
| 105 | D CTR^SCRPIUT1(.X,IOM)
|
---|
| 106 | W !,X
|
---|
| 107 | ;
|
---|
| 108 | S X="Date Range: "_$$FMTE^XLFDT($P(SDDT,U))_" to "_$$FMTE^XLFDT($P(SDDT,U,2))
|
---|
| 109 | D CTR^SCRPIUT1(.X,IOM)
|
---|
| 110 | W !,X
|
---|
| 111 | ;
|
---|
| 112 | S X="Selection Method by "_$$SELMTHD^SCRPI01(SDSEL1)_" then by "_$$SELMTHD^SCRPI01(SDSEL2)
|
---|
| 113 | D CTR^SCRPIUT1(.X,IOM)
|
---|
| 114 | W !,X
|
---|
| 115 | ;
|
---|
| 116 | W !!!,?35,"Encounter",?54,"Error",?62,"Error"
|
---|
| 117 | W !,"Patient Name",?27,"SSN",?35,"Date/Time",?54,"Srce",?62,"Code",?68,"Description"
|
---|
| 118 | W !,DBLDASH
|
---|
| 119 | S X="[ '*' Indicates Deleted Outpatient Encounter for Transmission ]"
|
---|
| 120 | D CTR^SCRPIUT1(.X,IOM)
|
---|
| 121 | W !,X,!
|
---|
| 122 | Q
|
---|
| 123 | ;
|
---|
| 124 | HDR1 ; Report header for no data found. Prints modified header.
|
---|
| 125 | ;
|
---|
| 126 | W !?2,"Date: ",$$FDATE^VALM1($$DT^XLFDT),?((IOM/2)-22),"Incomplete Encounter Management Error Listing"
|
---|
| 127 | S X="Date Range: "_$$FMTE^XLFDT($P(SDDT,U))_" to "_$$FMTE^XLFDT($P(SDDT,U,2))
|
---|
| 128 | D CTR^SCRPIUT1(.X,IOM)
|
---|
| 129 | W !,X
|
---|
| 130 | S X="Selection Method by "_$$SELMTHD^SCRPI01(SDSEL1)_" then by "_$$SELMTHD^SCRPI01(SDSEL2)
|
---|
| 131 | D CTR^SCRPIUT1(.X,IOM)
|
---|
| 132 | W !,X,!!
|
---|
| 133 | W !?5,"No errors found"
|
---|
| 134 | D NEXTLEV(SDSEL1)
|
---|
| 135 | D NEXTLEV(SDSEL2)
|
---|
| 136 | Q
|
---|
| 137 | ;
|
---|
| 138 | SELPAGE ; Print on last page the user parameters used for the report.
|
---|
| 139 | N SDIV,SDCLN,SDERR,SDPAT,SDDSS
|
---|
| 140 | ;
|
---|
| 141 | I 'PAGE,IOST?1"C-".E W @IOF
|
---|
| 142 | I PAGE,IOST?1"C-".E D Q:$G(SCABORT)
|
---|
| 143 | . S DIR(0)="E" D ^DIR K DIR S SCABORT='+$G(Y)
|
---|
| 144 | . W @IOF
|
---|
| 145 | E D
|
---|
| 146 | . I PAGE W @IOF
|
---|
| 147 | ;
|
---|
| 148 | S PAGE=PAGE+1
|
---|
| 149 | W !?2,"Date: ",$$FDATE^VALM1($$DT^XLFDT),?((IOM/2)-22),"Incomplete Encounter Management Error Listing",?(IOM-13),"Page: ",PAGE
|
---|
| 150 | S X="Report Selection Criteria"
|
---|
| 151 | D CTR^SCRPIUT1(X,IOM)
|
---|
| 152 | S X="Date Range: "_$$FMTE^XLFDT($P(SDDT,U))_" to "_$$FMTE^XLFDT($P(SDDT,U,2))
|
---|
| 153 | D CTR^SCRPIUT1(X,IOM)
|
---|
| 154 | ;
|
---|
| 155 | W !!?10,"Divisions: ",$S(VAUTD:"All",1:"")
|
---|
| 156 | I 'VAUTD S SDIV="" F S SDIV=$O(VAUTD(SDIV)) Q:'SDIV W !?15,VAUTD(SDIV)
|
---|
| 157 | ;
|
---|
| 158 | D NEXTLEV(SDSEL1)
|
---|
| 159 | D NEXTLEV(SDSEL2)
|
---|
| 160 | Q
|
---|
| 161 | ;
|
---|
| 162 | NEXTLEV(SRT) ; Print out any sublevels of the user selection parameters
|
---|
| 163 | N SDITEM
|
---|
| 164 | ;
|
---|
| 165 | I SRT["CLN" D
|
---|
| 166 | . W !!?10,"Clinics: ",$S(VAUTC:"All",1:"")
|
---|
| 167 | . I 'VAUTC S SDITEM="" F S SDITEM=$O(VAUTC(SDITEM)) Q:'SDITEM W !?15,VAUTC(SDITEM)
|
---|
| 168 | ;
|
---|
| 169 | I SRT["PAT" D
|
---|
| 170 | . W !!?10,"Patients: ",$S(VAUTN:"All",1:"")
|
---|
| 171 | . I 'VAUTN S SDITEM="" F S SDITEM=$O(VAUTN(SDITEM)) Q:'SDITEM W !?15,VAUTN(SDITEM)
|
---|
| 172 | ;
|
---|
| 173 | I SRT["ERR" D
|
---|
| 174 | . W !!?10,"Error Codes: ",$S(VAUER:"All",1:"")
|
---|
| 175 | . I 'VAUER S SDITEM="" F S SDITEM=$O(VAUER(SDITEM)) Q:'SDITEM W !?15,VAUER(SDITEM)," ",$E($P(^SD(409.76,SDITEM,1),U),1,60)
|
---|
| 176 | ;
|
---|
| 177 | I SRT["DSS" D
|
---|
| 178 | . W !!?10,"Clinic Stop Codes: ",$S(VAUDS:"All",1:"")
|
---|
| 179 | . I 'VAUDS S SDITEM="" F S SDITEM=$O(VAUDS(SDITEM)) Q:'SDITEM W !?15,VAUDS(SDITEM)
|
---|
| 180 | Q
|
---|