1 | SOWKQAM4 ;B'HAM ISC/SAB,DLR-Routine to print quality mgmt. monitor IV report ; 20 Apr 93 / 7:58 AM [ 09/26/94 8:30 AM ]
|
---|
2 | ;;3.0; Social Work ;**34,53**;27 Apr 93
|
---|
3 | K ^TMP($J)
|
---|
4 | BEG W ! S %DT="AEXP",%DT("A")="ALL CASES STARTING FROM: " D ^%DT G:"^"[X CLOS G:Y'>0 BEG S SB1=Y X ^DD("DD") S SBA=Y
|
---|
5 | END W ! S %DT("A")="ALL CASES ENDING: " D ^%DT G:"^"[X CLOS G:Y'>0 END S SE1=Y X ^DD("DD") S SEA=Y I SE1<SB1 W !,"Ending date must be after starting date ",! G BEG
|
---|
6 | DEV W !!,"WARNING !!!",!?5,"This report is formatted for 132 columns and will be",!?5,"difficult to read if printed to the screen.",!
|
---|
7 | K ZTSK,%ZIS,IOP S SOWKION=ION,%ZIS="QM",%ZIS("B")="" D ^%ZIS K %ZIS I POP S IOP=SOWKION D ^%ZIS K SOWKION,IOP G CLOS Q
|
---|
8 | K SOWKION I $D(IO("Q")) S ZTRTN="ENQ^SOWKQAM4",ZTDESC="QUALITY MGMT. MONITOR IV REPORT - SOCIAL WORK" F G="SE1","SB1","SBA","SEA" S:$D(@G) ZTSAVE(G)=""
|
---|
9 | I K IO("Q") D ^%ZTLOAD I '$D(ZTSK) G CLOS
|
---|
10 | I $D(ZTSK) W !!,"Task Queued to Print",! K ZTSK G CLOS
|
---|
11 | ENQ K ^TMP($J) F SOWK=0:0 S SOWK=$O(^SOWK(650,SOWK)) Q:'SOWK D GET
|
---|
12 | D PRI
|
---|
13 | CLOS W ! W:$E(IOST)'["C" @IOF D ^%ZISC K ^TMP($J),TOT,CN,PTO,OC,OUT,PG,D,D1,D2,D,T,WRK,SOWKI,SB1,CN,SBA,SEA,Y,SE1,IOP,POP,SOWK,%DT,G,I,X D:$D(ZTSK) KILL^%ZTLOAD
|
---|
14 | Q
|
---|
15 | CAL ;CALCULATE TOTALS
|
---|
16 | S CN=^SOWK(650,SOWK,0),WRK=$P(^VA(200,$P(CN,"^",3),654),"^",3) S:'$D(^TMP($J,WRK)) ^TMP($J,WRK)=0
|
---|
17 | F SOWKI=0:0 S SOWKI=$O(^SOWK(650,SOWK,2,SOWKI)) Q:'SOWKI S:'$D(^TMP($J,WRK,$P(^SOWK(650,SOWK,2,SOWKI,0),"^")))&($P(^SOWK(650,SOWK,2,SOWKI,0),"^",2)) ^TMP($J,WRK,$P(^SOWK(650,SOWK,2,SOWKI,0),"^"))=0
|
---|
18 | F SOWKI=0:0 S SOWKI=$O(^SOWK(650,SOWK,2,SOWKI)) Q:'SOWKI D:$P(^SOWK(650,SOWK,2,SOWKI,0),"^",2) CAL1
|
---|
19 | S WRK="" F I=0:0 S WRK=$O(^TMP($J,WRK)) Q:WRK="" F T=0:0 S T=$O(^TMP($J,WRK,T)) Q:'T S:'$D(^TMP($J,WRK,"%",T)) ^(T)=0 F OC=1:1:8 S $P(^TMP($J,WRK,"%",T),"^",OC)=(+$P(^TMP($J,WRK,T),"^",OC)/^TMP($J,WRK,"TOT",T))*100
|
---|
20 | Q
|
---|
21 | PRI ;print data
|
---|
22 | S WRK="" F I=0:0 S WRK=$O(^TMP($J,WRK)) Q:WRK=""!($G(OUT)=1) S TOT=^(WRK) I TOT D HDR1 D:$G(OUT)'=1 PR1
|
---|
23 | Q
|
---|
24 | PR1 F G=0:0 S G=$O(^TMP($J,WRK,G)) Q:'G!($G(OUT)=1) S D=^TMP($J,WRK,G),D1=^TMP($J,WRK,"%",G),D2=^TMP($J,WRK,"TOT",G) D PR2
|
---|
25 | Q:$G(OUT)=1 W !!,"TOTALS: ",?12,$J(TOT,3,0),?20,$J(TOT(1),3,0),?27,$J(PTO(1),3,2),?34,$J(TOT(2),3,0),?41,$J(PTO(2),3,2),?48,$J(TOT(3),3,0),?55,$J(PTO(3),3,2),?62,$J(TOT(4),3,0),?69,$J(PTO(4),3,2)
|
---|
26 | W ?76,$J(TOT(5),3,0),?83,$J(PTO(5),3,2),?90,$J(TOT(6),3,0),?96,$J(PTO(6),3,2),?102,$J(TOT(7),3,0),?108,$J(PTO(7),3,2),?115,$J(TOT(8),3,0),?122,$J(PTO(8),3,2)
|
---|
27 | K TOT,PTO Q
|
---|
28 | HDR1 D CHK U IO W !!?45,"Department of Veterans Affairs",!?44,$P(^DD("SITE"),"^")_" ("_$P(^DD("SITE",1),"^")_")",!?40,"Social Work Information Management System",!?45,"Quality Management Monitor IV"
|
---|
29 | W !?39,"Level of problem resolution by problem code",!,"Date: "_$E(DT,4,5)_"/"_$E(DT,6,7)_"/"_$E(DT,2,3),?80,"Reporting Period "_SBA_" to "_SEA,!
|
---|
30 | W !?8,"Worker's #: "_WRK,!!,"Problem",?11,"# Times",?60,"Resolutions",!?11,"Occurred",?25,1,?40,2,?54,3,?68,4,?82,5,?95,6,?107,7,?121,8
|
---|
31 | W !?22,"#",?30,"%",?36,"#",?44,"%",?50,"#",?58,"%",?64,"#",?72,"%",?78,"#",?86,"%",?92,"#",?99,"%",?104,"#",?111,"%",?117,"#",?125,"%"
|
---|
32 | Q
|
---|
33 | PR2 D CHK Q:$G(OUT)=1 W !,$J(G,3,0),?12,$J(D2,3,0),?20,$J($P(D,"^"),3,0),?27,$J($P(D1,"^"),3,2),?34,$J($P(D,"^",2),3,0),?41,$J($P(D1,"^",2),3,2),?48,$J($P(D,"^",3),3,0),?55,$J($P(D1,"^",3),3,2),?62,$J($P(D,"^",4),3,0),?69,$J($P(D1,"^",4),3,2)
|
---|
34 | W ?76,$J($P(D,"^",5),3,0),?83,$J($P(D1,"^",5),3,2),?90,$J($P(D,"^",6),3,0),?96,$J($P(D1,"^",6),3,2),?102,$J($P(D,"^",7),3,0),?108,$J($P(D1,"^",7),3,2),?115,$J($P(D,"^",8),3,0),?122,$J($P(D1,"^",8),3,2)
|
---|
35 | F OC=1:1:8 S:'$D(TOT(OC)) TOT(OC)=0 S TOT(OC)=TOT(OC)+$J($P(D,"^",OC),3,2)
|
---|
36 | F OC=1:1:8 S:'$D(PTO(OC)) PTO(OC)=0 S PTO(OC)=(TOT(OC)/TOT)*100
|
---|
37 | Q
|
---|
38 | CAL1 S $P(^TMP($J,WRK,$P(^SOWK(650,SOWK,2,SOWKI,0),"^")),"^",+$P(^(0),"^",2))=+$P(^TMP($J,WRK,$P(^SOWK(650,SOWK,2,SOWKI,0),"^")),"^",$P(^SOWK(650,SOWK,2,SOWKI,0),"^",2))+1
|
---|
39 | S:'$D(^TMP($J,WRK,"TOT",$P(^SOWK(650,SOWK,2,SOWKI,0),"^"))) ^TMP($J,WRK,"TOT",$P(^SOWK(650,SOWK,2,SOWKI,0),"^"))=0
|
---|
40 | S ^TMP($J,WRK,"TOT",$P(^SOWK(650,SOWK,2,SOWKI,0),"^"))=^TMP($J,WRK,"TOT",$P(^(0),"^"))+1,^TMP($J,WRK)=^TMP($J,WRK)+1
|
---|
41 | Q
|
---|
42 | GET I $P(^SOWK(650,SOWK,0),"^",2)'<SB1,$P(^(0),"^",2)'>SE1,'$P(^(0),"^",18) D CAL Q
|
---|
43 | I $P(^SOWK(650,SOWK,0),"^",18)'<SB1,$P(^(0),"^",18)'>SE1 D CAL
|
---|
44 | Q
|
---|
45 | CHK ;
|
---|
46 | S PG=$G(PG)+1 I PG=1 W:$Y @IOF Q
|
---|
47 | Q:($Y+5)'>IOSL
|
---|
48 | N SWXX
|
---|
49 | I $E(IOST)["C" R !,"Press <RETURN> to continue: ",SWXX:DTIME I SWXX["^" S OUT=1
|
---|
50 | W @IOF
|
---|
51 | Q
|
---|