1 | RAPM1 ;HOIFO/TH-Radiology Performance Monitors/Indicator ;2/18/04 09:42
|
---|
2 | ;;5.0;Radiology/Nuclear Medicine;**37,44,48,59,67**;Mar 16, 1998
|
---|
3 | ; Summary Report
|
---|
4 | D HDR^RAPM2("S")
|
---|
5 | ; Print total reports
|
---|
6 | W !,"Total number of reports expected for procedures performed during "
|
---|
7 | W "specified",!,"date range: "
|
---|
8 | S RATOTCNT=+$G(^TMP($J,"RAPM","TOTAL"))
|
---|
9 | W $J(+RATOTCNT,$L(+RATOTCNT))
|
---|
10 | S RAN=RAN+1,^TMP($J,"RAPM",RAN)="",RAN=RAN+1
|
---|
11 | S ^TMP($J,"RAPM",RAN)="Total number of reports expected for procedures performed during specified",RAN=RAN+1
|
---|
12 | S ^TMP($J,"RAPM",RAN)="date range: "_$J(+RATOTCNT,$L(+RATOTCNT)),RAN=RAN+1,^TMP($J,"RAPM",RAN)="",RAN=RAN+1
|
---|
13 | D SHDR,SRPT,SFOOT^RAPM3
|
---|
14 | Q
|
---|
15 | SHDR ; Print header of summary report
|
---|
16 | G:'RAIO SHDR2 ; skip writes if original IO is null
|
---|
17 | I ($Y+5)>IOSL,IO=IO(0) D
|
---|
18 | . I $E(IOST,1,2)="C-" R !,"Press RETURN to continue.",X:DTIME
|
---|
19 | . S RAPG=RAPG+1,RAHDR="Summary Verification Timeliness Report"
|
---|
20 | . W:$E(IOST,1,2)="C-" @IOF W !?(RAIOM-$L(RAHDR)\2),RAHDR,?(RAIOM-10),"Page: ",$G(RAPG)
|
---|
21 | W !!,"Hrs ",?8,">0",?14,">24",?21,">48",?27,">72",?33,">96"
|
---|
22 | W ?38,">120",?44,">144",?50,">168",?56,">192",?62,">216",?68,">240"
|
---|
23 | W ?73,"PENDING"
|
---|
24 | W !,"From",?7,"-24",?14,"-48",?21,"-72",?27,"-96",?32,"-120",?38,"-144"
|
---|
25 | W ?44,"-168",?50,"-192",?56,"-216",?62,"-240",?68,"Hrs"
|
---|
26 | W !,"Ex Dt",?7,"Hrs",?14,"Hrs",?21,"Hrs",?27,"Hrs",?33,"Hrs",?39,"Hrs",?45,"Hrs",?51,"Hrs",?57,"Hrs",?63,"Hrs",!
|
---|
27 | SHDR2 ;save to tmp
|
---|
28 | S ^TMP($J,"RAPM",RAN)="Hrs >0 >24 >48 >72 >96 >120 >144 >168 >192 >216 >240 PENDING",RAN=RAN+1
|
---|
29 | S ^TMP($J,"RAPM",RAN)="From -24 -48 -72 -96 -120 -144 -168 -192 -216 -240 Hrs",RAN=RAN+1
|
---|
30 | S ^TMP($J,"RAPM",RAN)="Ex Dt Hrs Hrs Hrs Hrs Hrs Hrs Hrs Hrs Hrs Hrs",RAN=RAN+1
|
---|
31 | S ^TMP($J,"RAPM",RAN)="",RAN=RAN+1
|
---|
32 | Q
|
---|
33 | SRPT ; Print summary report
|
---|
34 | I RATOTCNT=0 W:RAIO !,?4,"No data to print..." Q
|
---|
35 | G:'RAIO SRPT2
|
---|
36 | I ($Y+5)>IOSL,IO=IO(0) D SHDR
|
---|
37 | ;
|
---|
38 | W !,"#Tr",?4,$J(+$G(^TMP($J,"RAPM","TR",1)),6),?11,$J(+$G(^(2)),6),?18,$J(+$G(^(3)),6),?25,$J(+$G(^(4)),5)
|
---|
39 | W ?31,$J(+$G(^TMP($J,"RAPM","TR",5)),5),?37,$J(+$G(^(6)),5),?43,$J(+$G(^(7)),5),?49,$J(+$G(^(8)),5),?55,$J(+$G(^(9)),5)
|
---|
40 | W ?61,$J(+$G(^TMP($J,"RAPM","TR",10)),5),?67,$J(+$G(^(11)),5),?73,$J(+$G(^(0)),7)
|
---|
41 | ;
|
---|
42 | W !,"%Tr",?4,$J((+$G(^TMP($J,"RAPM","TR",1))/RATOTCNT)*100,6,1)
|
---|
43 | W ?11,$J((+$G(^TMP($J,"RAPM","TR",2))/RATOTCNT)*100,6,1),?18,$J((+$G(^(3))/RATOTCNT)*100,6,1),?25,$J((+$G(^(4))/RATOTCNT)*100,5,1)
|
---|
44 | W ?31,$J((+$G(^TMP($J,"RAPM","TR",5))/RATOTCNT)*100,5,1),?37,$J((+$G(^(6))/RATOTCNT)*100,5,1),?43,$J((+$G(^(7))/RATOTCNT)*100,5,1),?49,$J((+$G(^(8))/RATOTCNT)*100,5,1)
|
---|
45 | W ?55,$J((+$G(^TMP($J,"RAPM","TR",9))/RATOTCNT)*100,5,1),?61,$J((+$G(^(10))/RATOTCNT)*100,5,1),?67,$J((+$G(^(11))/RATOTCNT)*100,5,1),?73,$J((+$G(^(0))/RATOTCNT)*100,7,1),!
|
---|
46 | ;
|
---|
47 | W !,"#Vr",?4,$J(+$G(^TMP($J,"RAPM","VR",1)),6),?11,$J(+$G(^(2)),6),?18,$J(+$G(^(3)),6),?25,$J(+$G(^(4)),5),?31,$J(+$G(^(5)),5)
|
---|
48 | W ?37,$J(+$G(^TMP($J,"RAPM","VR",6)),5),?43,$J(+$G(^(7)),5),?49,$J(+$G(^(8)),5),?55,$J(+$G(^(9)),5),?61,$J(+$G(^(10)),5)
|
---|
49 | W ?67,$J(+$G(^TMP($J,"RAPM","VR",11)),5),?73,$J(+$G(^(0)),7)
|
---|
50 | ;
|
---|
51 | W !,"%Vr",?4,$J((+$G(^TMP($J,"RAPM","VR",1))/RATOTCNT)*100,6,1),?11,$J((+$G(^(2))/RATOTCNT)*100,6,1),?18,$J((+$G(^(3))/RATOTCNT)*100,6,1)
|
---|
52 | W ?25,$J((+$G(^TMP($J,"RAPM","VR",4))/RATOTCNT)*100,5,1),?31,$J((+$G(^(5))/RATOTCNT)*100,5,1),?37,$J((+$G(^(6))/RATOTCNT)*100,5,1),?43,$J((+$G(^(7))/RATOTCNT)*100,5,1)
|
---|
53 | W ?49,$J((+$G(^TMP($J,"RAPM","VR",8))/RATOTCNT)*100,5,1),?55,$J((+$G(^(9))/RATOTCNT)*100,5,1),?61,$J((+$G(^(10))/RATOTCNT)*100,5,1),?67,$J((+$G(^(11))/RATOTCNT)*100,5,1)
|
---|
54 | W ?73,$J((+$G(^TMP($J,"RAPM","VR",0))/RATOTCNT)*100,7,1),!
|
---|
55 | ;
|
---|
56 | SRPT2 ; store in tmp
|
---|
57 | S ^TMP($J,"RAPM",RAN)="#Tr"_$J(+$G(^TMP($J,"RAPM","TR",1)),6)_" "_$J(+$G(^(2)),6)_" "_$J(+$G(^(3)),6)_" "_$J(+$G(^(4)),5)_" "_$J(+$G(^(5)),5)
|
---|
58 | S ^TMP($J,"RAPM",RAN)=^TMP($J,"RAPM",RAN)_" "_$J(+$G(^TMP($J,"RAPM","TR",6)),5)_" "_$J(+$G(^(7)),5)_" "_$J(+$G(^(8)),5)_" "_$J(+$G(^(9)),5)_" "_$J(+$G(^(10)),5)
|
---|
59 | S ^TMP($J,"RAPM",RAN)=^TMP($J,"RAPM",RAN)_" "_$J(+$G(^TMP($J,"RAPM","TR",11)),5)_" "_$J(+$G(^(0)),7) S RAN=RAN+1
|
---|
60 | ;
|
---|
61 | S ^TMP($J,"RAPM",RAN)="%Tr"_$J((+$G(^TMP($J,"RAPM","TR",1))/RATOTCNT)*100,6,1)_" "_$J((+$G(^(2))/RATOTCNT)*100,6,1)_" "_$J((+$G(^(3))/RATOTCNT)*100,6,1)_" "_$J((+$G(^(4))/RATOTCNT)*100,5,1)
|
---|
62 | S ^TMP($J,"RAPM",RAN)=$G(^TMP($J,"RAPM",RAN))_" "_$J((+$G(^TMP($J,"RAPM","TR",5))/RATOTCNT)*100,5,1)_" "_$J((+$G(^(6))/RATOTCNT)*100,5,1)_" "_$J((+$G(^(7))/RATOTCNT)*100,5,1)
|
---|
63 | S ^TMP($J,"RAPM",RAN)=$G(^TMP($J,"RAPM",RAN))_" "_$J((+$G(^TMP($J,"RAPM","TR",8))/RATOTCNT)*100,5,1)_" "_$J((+$G(^(9))/RATOTCNT)*100,5,1)_" "_$J((+$G(^(10))/RATOTCNT)*100,5,1)
|
---|
64 | S ^TMP($J,"RAPM",RAN)=$G(^TMP($J,"RAPM",RAN))_" "_$J((+$G(^TMP($J,"RAPM","TR",11))/RATOTCNT)*100,5,1)_" "_$J((+$G(^(0))/RATOTCNT)*100,7,1)
|
---|
65 | S RAN=RAN+1,^TMP($J,"RAPM",RAN)="",RAN=RAN+1
|
---|
66 | ;
|
---|
67 | S ^TMP($J,"RAPM",RAN)="#Vr"_$J(+$G(^TMP($J,"RAPM","VR",1)),6)_" "_$J(+$G(^(2)),6)_" "_$J(+$G(^(3)),6)_" "_$J(+$G(^(4)),5)_" "_$J(+$G(^(5)),5)
|
---|
68 | S ^TMP($J,"RAPM",RAN)=$G(^TMP($J,"RAPM",RAN))_" "_$J(+$G(^TMP($J,"RAPM","VR",6)),5)_" "_$J(+$G(^(7)),5)_" "_$J(+$G(^(8)),5)_" "_$J(+$G(^(9)),5)_" "_$J(+$G(^(10)),5)
|
---|
69 | S ^TMP($J,"RAPM",RAN)=$G(^TMP($J,"RAPM",RAN))_" "_$J(+$G(^TMP($J,"RAPM","VR",11)),5)_" "_$J(+$G(^(0)),7) S RAN=RAN+1
|
---|
70 | ;
|
---|
71 | S ^TMP($J,"RAPM",RAN)="%Vr"_$J((+$G(^TMP($J,"RAPM","VR",1))/RATOTCNT)*100,6,1)_" "_$J((+$G(^(2))/RATOTCNT)*100,6,1)_" "_$J((+$G(^(3))/RATOTCNT)*100,6,1)_" "_$J((+$G(^(4))/RATOTCNT)*100,5,1)
|
---|
72 | S ^TMP($J,"RAPM",RAN)=$G(^TMP($J,"RAPM",RAN))_" "_$J((+$G(^TMP($J,"RAPM","VR",5))/RATOTCNT)*100,5,1)_" "_$J((+$G(^(6))/RATOTCNT)*100,5,1)_" "_$J((+$G(^(7))/RATOTCNT)*100,5,1)
|
---|
73 | S ^TMP($J,"RAPM",RAN)=$G(^TMP($J,"RAPM",RAN))_" "_$J((+$G(^TMP($J,"RAPM","VR",8))/RATOTCNT)*100,5,1)_" "_$J((+$G(^(9))/RATOTCNT)*100,5,1)_" "_$J((+$G(^(10))/RATOTCNT)*100,5,1)
|
---|
74 | S ^TMP($J,"RAPM",RAN)=$G(^TMP($J,"RAPM",RAN))_" "_$J((+$G(^TMP($J,"RAPM","VR",11))/RATOTCNT)*100,5,1)_" "_$J((+$G(^(0))/RATOTCNT)*100,7,1) S RAN=RAN+1
|
---|
75 | Q
|
---|
76 | RPTINFO ; Other report info.
|
---|
77 | ; Get Date/Time Report Entered, replace prev RACN with data from Report
|
---|
78 | S RARPTDT=$P(^RARPT(RARPTTXT,0),U,6),RACN=$P(^(0),U)
|
---|
79 | ; Get Verified Date/Time
|
---|
80 | S RAVERDT=$P(^RARPT(RARPTTXT,0),U,7)
|
---|
81 | ; Use 1st Verified Date/Time for amended reports
|
---|
82 | I RAVERDT,$O(^RARPT(RARPTTXT,"ERR",0)) D
|
---|
83 | . S RA1=0
|
---|
84 | . F S RA1=$O(^RARPT(RARPTTXT,"L",RA1)) Q:'RA1 I $D(^(RA1,0)),$P(^(0),U,2)="V" S RAVERDT=$P(^(0),U) Q
|
---|
85 | . Q
|
---|
86 | I RARPTDT="" S ^TMP($J,"RAPM","TR",0)=$G(^TMP($J,"RAPM","TR",0))+1
|
---|
87 | I RAVERDT="" S ^TMP($J,"RAPM","VR",0)=$G(^TMP($J,"RAPM","VR",0))+1
|
---|
88 | ; Get Report Status
|
---|
89 | S RARPTST=$P(^RARPT(RARPTTXT,0),U,5)
|
---|
90 | ;
|
---|
91 | CAL ; Calculation: Null report pointer, no report, no report date, no
|
---|
92 | ; verfied date are counted as diff=0
|
---|
93 | ; # of Transcribed = Total # of transcribed exams not cancelled.
|
---|
94 | ; # of hrs from exam registration = Date/Time transcribed
|
---|
95 | ; (Date Report Entered) - Exam Date/time
|
---|
96 | I RARPTDT D
|
---|
97 | . S RATDFSEC=$$FMDIFF^XLFDT(RARPTDT,RADTE,2)
|
---|
98 | . S RATDFHR=RATDFSEC/3600
|
---|
99 | . S RATHRS=$S(RATDFHR=0:0,RATDFHR'>24:1,RATDFHR'>48:2,RATDFHR'>72:3,RATDFHR'>96:4,RATDFHR'>120:5,RATDFHR'>144:6,RATDFHR'>168:7,RATDFHR'>192:8,RATDFHR'>216:9,RATDFHR'>240:10,1:11)
|
---|
100 | . S ^(RATHRS)=$G(^TMP($J,"RAPM","TR",RATHRS))+1
|
---|
101 | ;
|
---|
102 | I RAVERDT D
|
---|
103 | . S RAVDFSEC=$$FMDIFF^XLFDT(RAVERDT,RADTE,2)
|
---|
104 | . S RAVDFHR=RAVDFSEC/3600
|
---|
105 | . S RAVHRS=$S(RAVDFHR=0:0,RAVDFHR'>24:1,RAVDFHR'>48:2,RAVDFHR'>72:3,RAVDFHR'>96:4,RAVDFHR'>120:5,RAVDFHR'>144:6,RAVDFHR'>168:7,RAVDFHR'>192:8,RAVDFHR'>216:9,RAVDFHR'>240:10,1:11)
|
---|
106 | . S ^(RAVHRS)=$G(^TMP($J,"RAPM","VR",RAVHRS))+1
|
---|
107 | Q
|
---|