| 1 | LRCAPA12 ;SLC/RJS/FHS - LAB WORKLOAD  DIVISION REPORT;8/23/91 1039; | 
|---|
| 2 | ;;5.2;LAB SERVICE;**201**;Sep 27, 1994 | 
|---|
| 3 | EN ; | 
|---|
| 4 | ; | 
|---|
| 5 | K ^TMP($J),ZTSK | 
|---|
| 6 | ASK1 ; | 
|---|
| 7 | S %DT="E" W !!,"Beginning Date: " R X:$S($D(DTIME):DTIME,1:999) E  G EXIT | 
|---|
| 8 | G:(X["^") EXIT D ^%DT G:(Y<0) ASK1 S LRDT1=+Y | 
|---|
| 9 | ASK2 ; | 
|---|
| 10 | S %DT="E" W !!,"Ending Date: " R X:$S($D(DTIME):DTIME,1:999) E  G EXIT | 
|---|
| 11 | G:(X["^") EXIT D ^%DT G:(Y<0) ASK2 S LRDT2=+Y I LRDT1>LRDT2 S Y=LRDT1,LRDT1=LRDT2,LRDT2=Y | 
|---|
| 12 | W !! S %ZIS="NQ" D ^%ZIS G:'$L(IO) EXIT | 
|---|
| 13 | G:IO'=IO(0)!($D(IO("Q"))) QUEUE | 
|---|
| 14 | DQ ; | 
|---|
| 15 | I $D(ZTQUEUED) S ZTREQ="@" | 
|---|
| 16 | U IO S LRPG=0 D LOOP W:TOT !!,?35,"Total for the Report: ",$J(TOT,10,2) | 
|---|
| 17 | I '$D(^TMP($J)) W !!?10,"No Data for " S X=LRDT1P D DD W " - " S X=LRDT2P D DD W !! | 
|---|
| 18 | W:IOST["P-" @IOF | 
|---|
| 19 | EXIT ; | 
|---|
| 20 | D ^%ZISC | 
|---|
| 21 | K LRPG,TOT,LRDT,LRDT1,LRDT2,LRDV1,LRDV2,LRLN,^TMP($J),LRTXT,ZTSK,%DT,%ZIS,ZTRTN,ZTDESC,ZTIO,ZTSAVE,LRDT1P,LRDT2P,IO("Q") | 
|---|
| 22 | Q | 
|---|
| 23 | QUEUE ; | 
|---|
| 24 | S ZTRTN="DQ^LRCAPA12",ZTSAVE("LRDT*")="",ZTDESC="Lab Workload Division Report",ZTIO=ION | 
|---|
| 25 | K ZTDTH,ZTCPU,ZTUCI | 
|---|
| 26 | D ^%ZTLOAD | 
|---|
| 27 | G EXIT | 
|---|
| 28 | Q | 
|---|
| 29 | LOOP ; | 
|---|
| 30 | S (LRLN,LRDV1,LRDV2,TOT)=0,LRDT1P=LRDT1,LRDT2P=LRDT2,LRDT1=LRDT1-.0001,LRDT2=LRDT2+.00001 D DT^LRX | 
|---|
| 31 | W !! D WAIT^DICD W:IOST["P-" @IOF | 
|---|
| 32 | F  S LRLN=$O(^TMP("WL",LRLN)) Q:'LRLN  S LRTXT=^(LRLN) D LOOP1 | 
|---|
| 33 | D HEADER | 
|---|
| 34 | S LRDV1=0 F  S LRDV1=$O(^TMP($J,LRDV1)) Q:'LRDV1  D LOOP2 | 
|---|
| 35 | Q | 
|---|
| 36 | LOOP1 ; | 
|---|
| 37 | I ($E(LRTXT,1,2)="$$") S LRDV2=+$E(LRTXT,3,99),LRDT=$E(LRTXT,10,16) Q | 
|---|
| 38 | I ($E(LRTXT,1)="$") S LRDV1=+$E(LRTXT,2,99) Q | 
|---|
| 39 | Q:'LRDV1!('LRDV2) | 
|---|
| 40 | I LRDT>LRDT1,LRDT<LRDT2 D DATES S ^TMP($J,LRDV1,LRDV2,"TOT WRK")=^TMP($J,LRDV1,LRDV2,"TOT WRK")+(+$E(LRTXT,28,99)*(+$E(LRTXT,34,99))) | 
|---|
| 41 | Q | 
|---|
| 42 | LOOP2 ; | 
|---|
| 43 | S LRDV2=0 F  S LRDV2=$O(^TMP($J,LRDV1,LRDV2)) Q:'LRDV2  D LOOP3 | 
|---|
| 44 | Q | 
|---|
| 45 | LOOP3 ; | 
|---|
| 46 | I IOST["P-"&($Y>(IOSL-6)) D HEADER | 
|---|
| 47 | W !,"Division: ",LRDV2 | 
|---|
| 48 | S X=^TMP($J,LRDV1,LRDV2,"LO DT") W ?20,"From: " D DD S X=^("HI DT") W ?35,"To: " D DD | 
|---|
| 49 | W ?50,"Total: ",$J(^("TOT WRK"),10,2) S TOT=TOT+^("TOT WRK") | 
|---|
| 50 | Q | 
|---|
| 51 | DATES ; | 
|---|
| 52 | D:'$D(^TMP($J,LRDV1,LRDV2,"HI DT"))#2 NEW | 
|---|
| 53 | S:'(LRDT<^TMP($J,LRDV1,LRDV2,"HI DT")) ^TMP($J,LRDV1,LRDV2,"HI DT")=LRDT | 
|---|
| 54 | S:'(LRDT>^TMP($J,LRDV1,LRDV2,"LO DT")) ^TMP($J,LRDV1,LRDV2,"LO DT")=LRDT | 
|---|
| 55 | Q | 
|---|
| 56 | NEW ; | 
|---|
| 57 | S ^TMP($J,LRDV1,LRDV2,"HI DT")=0 | 
|---|
| 58 | S ^TMP($J,LRDV1,LRDV2,"LO DT")=9999999 | 
|---|
| 59 | S ^TMP($J,LRDV1,LRDV2,"TOT WRK")=0 | 
|---|
| 60 | Q | 
|---|
| 61 | HEADER ; | 
|---|
| 62 | S LRPG=LRPG+1 W:IOST["P-"&($Y>(IOSL-6)) @IOF W !!,"   Lab Workload Division Report for Site: ",LRDV1,"    Printed: ",LRDT0,!!,?60,"Pg: ",LRPG,! | 
|---|
| 63 | Q | 
|---|
| 64 | DD ; | 
|---|
| 65 | W $$FMTE^XLFDT(X,"1D") Q | 
|---|