| [613] | 1 | FHMNADM ;Hines OIFO/JT,RTK - Dietetics Adm/Disc Monitor Report ;06/12/02  10:34 | 
|---|
|  | 2 | ;;5.5;DIETETICS;;Jan 28, 2005 | 
|---|
|  | 3 | ; | 
|---|
|  | 4 | DATE ;sets date | 
|---|
|  | 5 | ; | 
|---|
|  | 6 | ; Check for multidivisional site | 
|---|
|  | 7 | I $P($G(^FH(119.9,1,0)),U,20)'="N" D ^FHMMNADM Q | 
|---|
|  | 8 | K %DT(0) S %DT="AEPT",%DT("A")="Enter beginning date: " D ^%DT Q:Y<0 | 
|---|
|  | 9 | S FHSDT=Y,%DT(0)=FHSDT,%DT("A")="Enter ending date: " D ^%DT Q:Y<0 | 
|---|
|  | 10 | S FHEDT=Y | 
|---|
|  | 11 | S DIR(0)="SA^A:Admissions;D:Discharges" | 
|---|
|  | 12 | S DIR("A")="Select type of movement for this report: " D ^DIR | 
|---|
|  | 13 | Q:Y["^"!(Y="")  S TYP=Y | 
|---|
|  | 14 | G DEV | 
|---|
|  | 15 | ; | 
|---|
|  | 16 | EN ;get admission/monitor information | 
|---|
|  | 17 | S PG=0,EX="",Y=DT X ^DD("DD") S FHNDT=Y D HDR | 
|---|
|  | 18 | S MVTOT=0,MONTOT=0 | 
|---|
|  | 19 | S I=FHSDT F  S I=$O(^DGPM("ATT1",I)) Q:'I!(I>FHEDT)!(EX=U)  D | 
|---|
|  | 20 | .S J=0 F  S J=$O(^DGPM("ATT1",I,J)) Q:'J!(EX=U)  D | 
|---|
|  | 21 | ..S ADM=J,ADMD=I D WRT Q | 
|---|
|  | 22 | .Q | 
|---|
|  | 23 | D END Q | 
|---|
|  | 24 | ; | 
|---|
|  | 25 | WRT ;write info | 
|---|
|  | 26 | ; | 
|---|
|  | 27 | S DFN=$P(^DGPM(J,0),U,3) I $Y>(IOSL-4) D PG I EX=U Q | 
|---|
|  | 28 | S FHZ115="P"_DFN D CHECK^FHOMDPA I FHDFN="" Q | 
|---|
|  | 29 | S Y=$P(ADMD,".") X ^DD("DD") W !,Y,?13,$E($P(^DPT(DFN,0),U,1),U,23) | 
|---|
|  | 30 | W ?39,$E($P(^(0),U,9),6,9) S MVTOT=MVTOT+1 | 
|---|
|  | 31 | I $D(^FHPT(FHDFN,"A",ADM,"MO"))>9 W ?48,"Yes" S MONTOT=MONTOT+1 | 
|---|
|  | 32 | S Y=$P($P($G(^FHPT(FHDFN,"A",ADM,0)),U,14),".",1) I Y X ^DD("DD") W ?56,Y | 
|---|
|  | 33 | Q | 
|---|
|  | 34 | ; | 
|---|
|  | 35 | EN1 ;discharges | 
|---|
|  | 36 | S PG=0,EX="",Y=DT X ^DD("DD") S FHNDT=Y D HDR | 
|---|
|  | 37 | S MVTOT=0,MONTOT=0 | 
|---|
|  | 38 | S I=FHSDT F  S I=$O(^DGPM("ATT3",I)) Q:'I!(I>FHEDT)!(EX=U)  D | 
|---|
|  | 39 | .S J=0 F  S J=$O(^DGPM("ATT3",I,J)) Q:'J!(EX=U)  D | 
|---|
|  | 40 | ..S ADM=$P(^DGPM(J,0),U,14) | 
|---|
|  | 41 | ..S ADMD=$P(^DGPM(ADM,0),U,1) D WRT Q | 
|---|
|  | 42 | .Q | 
|---|
|  | 43 | ; | 
|---|
|  | 44 | END ;end/kill/quit | 
|---|
|  | 45 | ; | 
|---|
|  | 46 | I EX=U D KL Q | 
|---|
|  | 47 | W !!,"TOTAL "_$S(TYP="A":"ADMISSIONS",TYP="D":"DISCHARGES")_": ",?22,MVTOT | 
|---|
|  | 48 | W !,"TOTAL WITH MONITORS:",?22,MONTOT | 
|---|
|  | 49 | S FHPER=0 I MONTOT>0,MVTOT>0 S FHPER=(MONTOT/MVTOT)*100 | 
|---|
|  | 50 | I $L($P(FHPER,".",2))>2 S FHPER=$P(FHPER,".",1)_"."_$E($P(FHPER,".",2),1,2) | 
|---|
|  | 51 | W !,"Percentage of " | 
|---|
|  | 52 | W $S(TYP="A":"Admissions",TYP="D":"Discharges") | 
|---|
|  | 53 | W " with Monitors: ",FHPER,"%" | 
|---|
|  | 54 | KL K I,J,FHDFN,DFN,SSN,MVTOT,MONTOT,FHPER,FHSDT,FHEDT,X,Y,PG,FHNDT,ADM | 
|---|
|  | 55 | K TAG,TYP,DIR,%DT,ADDT Q | 
|---|
|  | 56 | ; | 
|---|
|  | 57 | DEV ;get device and set up queue | 
|---|
|  | 58 | S TAG=$S(TYP="A":"EN",TYP="D":"EN1") | 
|---|
|  | 59 | K %ZIS,IOP S %ZIS="Q" D ^%ZIS Q:POP | 
|---|
|  | 60 | I '$D(IO("Q")) U IO D @TAG,^%ZISC Q | 
|---|
|  | 61 | S ZTRTN=TAG_"^FHMNADM",ZTSAVE("FHSDT")="",ZTSAVE("FHEDT")="" | 
|---|
|  | 62 | S ZTSAVE("TYP")="",ZTDESC="Dietetics Monitor Report" D ^%ZTLOAD | 
|---|
|  | 63 | W !,"Task #",ZTSK | 
|---|
|  | 64 | D ^%ZISC K %ZIS,IOP,FHSDT,FHEDT Q | 
|---|
|  | 65 | PG ; | 
|---|
|  | 66 | I IOST?1"C".E W ! K DIR S DIR(0)="E" D ^DIR I 'Y S EX=U Q | 
|---|
|  | 67 | D HDR Q | 
|---|
|  | 68 | HDR ;Header | 
|---|
|  | 69 | ; | 
|---|
|  | 70 | W:$Y @IOF | 
|---|
|  | 71 | W !,"DIETETIC MONITOR REPORT (Monitoring " | 
|---|
|  | 72 | W $S(TYP="A":"Admissions",TYP="D":"Discharges")_")" | 
|---|
|  | 73 | W !,FHNDT,?60,"Page: " S PG=PG+1 W PG,!! | 
|---|
|  | 74 | W "Admission",?13,"Patient",?39,"SSN",?45,"Monitor?",?56,"Discharge" | 
|---|
|  | 75 | W ! F Z=1:1:79 W "=" | 
|---|
|  | 76 | Q | 
|---|