| [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
 | 
|---|