| 1 | ESPWR ;DALISC/CKA - WORKLOAD REPORT- 3/93 | 
|---|
| 2 | ;;1.0;POLICE & SECURITY;**17,33**;Mar 31, 1994 | 
|---|
| 3 | START ; | 
|---|
| 4 | S ESPALL=0 | 
|---|
| 5 | SELOFF S DIR(0)="FO^3:30",DIR("A")="Select OFFICER",DIR("B")="ALL" D ^DIR | 
|---|
| 6 | I X="^" G EX | 
|---|
| 7 | I Y="ALL" S ESPALL=1 G DATE | 
|---|
| 8 | I $D(DTOUT) W $C(7) G EX | 
|---|
| 9 | S DIC="^VA(200,",DIC(0)="EMQZ",D="AK.ESP POLICE" | 
|---|
| 10 | D IX^DIC | 
|---|
| 11 | I Y=-1 W !,$C(7),"This officer is not a current police officer." G SELOFF | 
|---|
| 12 | S ESPPO=Y | 
|---|
| 13 | DATE ;ASK BEGINNING & ENDING DATE | 
|---|
| 14 | D DT^DICRW K BEGDATE,ENDDATE W !!,"****  Date Range Selection  ****",! | 
|---|
| 15 | S %DT="AE",%DT(0)="-NOW",%DT("A")="  Beginning DATE : " D ^%DT K %DT | 
|---|
| 16 | G:Y<0 EX | 
|---|
| 17 | S (BEGDATE,ESPBD)=Y | 
|---|
| 18 | W ! S %DT="AE",%DT("A")="   Ending DATE: " D ^%DT | 
|---|
| 19 | G:$D(DTOUT) EX | 
|---|
| 20 | G:Y<ESPBD HELP W ! S ENDDATE=Y,ESPED=Y+.9 | 
|---|
| 21 | ZERO S ESPI=0 F ESPX=1:1 S ESPI=$O(^ESP(911,ESPI)) Q:ESPI'>0  S ESPC(ESPI)=0,ESPMIN(ESPI)=0 | 
|---|
| 22 | COUNT ;GO THROUGH "B" X-REF TO COUNT AND GET TOTALS | 
|---|
| 23 | I 'ESPALL G ONE | 
|---|
| 24 | S ESPDT=ESPBD-.0005 | 
|---|
| 25 | F ESPI=1:1 S ESPDT=$O(^ESP(910.1,"B",ESPDT)) Q:ESPDT>ESPED!(ESPDT'>0)  D | 
|---|
| 26 | .  S ESPIEN=0 | 
|---|
| 27 | .  F ESPJ=1:1 S ESPIEN=$O(^ESP(910.1,"B",ESPDT,ESPIEN)) Q:ESPIEN'>0  D | 
|---|
| 28 | ..  S ESPOFF=0 | 
|---|
| 29 | ..  F ESPZ=1:1 S ESPOFF=$O(^ESP(910.1,ESPIEN,10,ESPOFF)) Q:ESPOFF'>0  D | 
|---|
| 30 | ...  ;COUNT AND GET TOTALS | 
|---|
| 31 | ...  S ESPACT=0 | 
|---|
| 32 | ...  F ESPY=1:1 S ESPACT=$O(^ESP(910.1,ESPIEN,10,ESPOFF,10,ESPACT)) Q:ESPACT'>0  D | 
|---|
| 33 | ....  S ESPI=$P(^ESP(910.1,ESPIEN,10,ESPOFF,10,ESPACT,0),U) I $D(ESPC(ESPI)) S ESPC(ESPI)=ESPC(ESPI)+$P(^(0),U,2),ESPMIN(ESPI)=ESPMIN(ESPI)+$P(^(0),U,3) | 
|---|
| 34 | G PRT | 
|---|
| 35 | ONE ;ONLY ONE OFFICER | 
|---|
| 36 | S ESPDT=ESPBD-.0005 | 
|---|
| 37 | F ESPI=1:1 S ESPDT=$O(^ESP(910.1,"B",ESPDT)) Q:ESPDT>ESPED!(ESPDT'>0)  D | 
|---|
| 38 | .  S ESPIEN=0 | 
|---|
| 39 | .  F ESPJ=1:1 S ESPIEN=$O(^ESP(910.1,"B",ESPDT,ESPIEN)) Q:ESPIEN'>0  D | 
|---|
| 40 | ..  S ESPOFF=0 | 
|---|
| 41 | ..  F ESPZ=1:1 S ESPOFF=$O(^ESP(910.1,ESPIEN,10,ESPOFF)) Q:ESPOFF'>0  D:+ESPPO=$P(^ESP(910.1,ESPIEN,10,ESPOFF,0),U) | 
|---|
| 42 | ...  ;COUNT AND GET TOTALS | 
|---|
| 43 | ...  S ESPACT=0 | 
|---|
| 44 | ...  F ESPY=1:1 S ESPACT=$O(^ESP(910.1,ESPIEN,10,ESPOFF,10,ESPACT)) Q:ESPACT'>0  D | 
|---|
| 45 | ....  S ESPI=$P(^ESP(910.1,ESPIEN,10,ESPOFF,10,ESPACT,0),U) I $D(ESPC(ESPI)) S ESPC(ESPI)=ESPC(ESPI)+$P(^(0),U,2),ESPMIN(ESPI)=ESPMIN(ESPI)+$P(^(0),U,3) | 
|---|
| 46 | PRT ;PRINT REPORT | 
|---|
| 47 | Q S %ZIS="Q" D ^%ZIS G:POP EX I '$D(IO("Q")) U IO D PRT^ESPWR1 G EX | 
|---|
| 48 | S ZTRTN="PRT^ESPWR1",ZTSAVE("ESP*")="",ZTDESC="WORKLOAD REPORT" D ^%ZTLOAD,HOME^%ZIS G EX | 
|---|
| 49 | W !!,"Done." | 
|---|
| 50 | EX D ^%ZISC | 
|---|
| 51 | W:$D(DTOUT) $C(7) | 
|---|
| 52 | K %ZIS,%DT,BEGDATE,CODE,DIC,DIR,END,ENDDATE,ESPACT,ESPALL,ESPBD,ESPC,ESPDT,ESPED,ESPI,ESPIEN,ESPJ,ESPMIN,ESPN,ESPPO,ESPOFF,ESPX,ESPY,ESPZ,NAM,OFNAM,PAGE,X,Y | 
|---|
| 53 | QUIT | 
|---|
| 54 | ; | 
|---|
| 55 | HELP W "??",!?5,"Ending date must not be before beginning date" G DATE | 
|---|