| [613] | 1 | A1B2OSR1 ;ALB/AAS - ODS SUMMARY REPORT - COLLECT DATA ; 11-JAN-91 | 
|---|
|  | 2 | ;;Version 1.55 (local for MAS v5 sites);; | 
|---|
|  | 3 | ; | 
|---|
|  | 4 | K ^UTILITY($J) | 
|---|
|  | 5 | D DATA Q | 
|---|
|  | 6 | ; | 
|---|
|  | 7 | DATA ;  -- collect admission data | 
|---|
|  | 8 | S A=A1B2BDT-.00001 | 
|---|
|  | 9 | F I=A:0 S A=$O(^A1B2(11500.2,"B",A)) Q:'A!(A>(A1B2EDT+.9))  F M=0:0 S M=$O(^A1B2(11500.2,"B",A,M)) Q:'M  I M,$D(^A1B2(11500.2,M,0)) S N=^(0) D FAC,ADM | 
|---|
|  | 10 | ; | 
|---|
|  | 11 | ;  --collect discharge data | 
|---|
|  | 12 | S D=A1B2BDT-.00001 | 
|---|
|  | 13 | F I=D:0 S D=$O(^A1B2(11500.2,"ADS",D)) Q:'D!(D>(A1B2EDT+.9))  F M=0:0 S M=$O(^A1B2(11500.2,"ADS",D,M)) Q:'M  I M,$D(^A1B2(11500.2,M,0)) S N=^(0) D FAC,DIS | 
|---|
|  | 14 | ; | 
|---|
|  | 15 | ;  -- collect patients remaining | 
|---|
|  | 16 | S P="" | 
|---|
|  | 17 | F I=0:0 S P=$O(^A1B2(11500.2,"B",P)) Q:'P!(P>(A1B2EDT+.9))  F M=0:0 S M=$O(^A1B2(11500.2,"B",P,M)) Q:'M  I M,$D(^A1B2(11500.2,M,0)) S N=^(0) D FAC I $S($P(N,"^",6)="":1,($P(N,"^",6)>(A1B2EDT+.9)):1,1:0) D PTRM | 
|---|
|  | 18 | ; | 
|---|
|  | 19 | ;  -- collect data on VA patients transfered to other facilities | 
|---|
|  | 20 | S T=A1B2BDT-.0001 | 
|---|
|  | 21 | F I=T:0 S T=$O(^A1B2(11500.3,"B",T)) Q:'T!(T>(A1B2EDT+.9))  F M=0:0 S M=$O(^A1B2(11500.3,"B",T,M)) Q:'M  I M,$D(^A1B2(11500.3,M,0)) S N=^(0) D FAC,TRF | 
|---|
|  | 22 | Q | 
|---|
|  | 23 | ; | 
|---|
|  | 24 | ADM ;  -- count total admissions | 
|---|
|  | 25 | Q:FAC=""!('A1B2CHK) | 
|---|
|  | 26 | S DFN=$P(N,"^",2) Q:'DFN!('$P(N,"^",15)) | 
|---|
|  | 27 | S BOS=$S('DFN:"",'$D(^A1B2(11500.1,DFN,0)):"",1:$P(^(0),"^",4)) | 
|---|
|  | 28 | S SPC=$S('$P(N,"^",3):"",'$D(^DIC(42.4,$P(N,"^",3),0)):"",1:$P(^(0),"^",3)) | 
|---|
|  | 29 | S:'$D(^UTILITY($J,"ODS-ADM",FAC)) ^(FAC)=0 S ^(FAC)=^(FAC)+1 | 
|---|
|  | 30 | S:'$D(^UTILITY($J,"ODS-ADM-NAT")) ^("ODS-ADM-NAT")=0 S ^("ODS-ADM-NAT")=^("ODS-ADM-NAT")+1 | 
|---|
|  | 31 | ; | 
|---|
|  | 32 | ;  -- count unique admissions | 
|---|
|  | 33 | I '$D(^UTILITY($J,"ODS-PT-ADM",DFN,FAC)) S:'$D(^UTILITY($J,"ODS-UNQ-ADM",FAC)) ^(FAC)=0 S ^(FAC)=^(FAC)+1 | 
|---|
|  | 34 | I '$D(^UTILITY($J,"ODS-PT-ADM",DFN)) S:'$D(^UTILITY($J,"ODS-UNQ-ADM-NAT")) ^("ODS-UNQ-ADM-NAT")=0 S ^("ODS-UNQ-ADM-NAT")=^("ODS-UNQ-ADM-NAT")+1 | 
|---|
|  | 35 | ; | 
|---|
|  | 36 | ;  -- count unique admssions by branch of service | 
|---|
|  | 37 | I BOS]"",'$D(^UTILITY($J,"ODS-PT-ADM-BOS",BOS,DFN,FAC)) S:'$D(^UTILITY($J,"ODS-UNQA-BOS",FAC,BOS)) ^(BOS)=0 S ^(BOS)=^(BOS)+1 | 
|---|
|  | 38 | I BOS]"",'$D(^UTILITY($J,"ODS-PT-ADM-BOS",BOS,DFN)) S:'$D(^UTILITY($J,"ODS-UNQA-BOS-NAT",BOS)) ^(BOS)=0 S ^(BOS)=^(BOS)+1 | 
|---|
|  | 39 | ; | 
|---|
|  | 40 | ;  -- count unique admissions by specialty | 
|---|
|  | 41 | I SPC]"",'$D(^UTILITY($J,"ODS-PT-ADM-SPC",SPC,DFN,FAC)) S:'$D(^UTILITY($J,"ODS-UNQA-SPC",FAC,SPC)) ^(SPC)=0 S ^(SPC)=^(SPC)+1 | 
|---|
|  | 42 | I SPC]"",'$D(^UTILITY($J,"ODS-PT-ADM-SPC",SPC,DFN)) S:'$D(^UTILITY($J,"ODS-UNQA-SPC-NAT",SPC)) ^(SPC)=0 S ^(SPC)=^(SPC)+1 | 
|---|
|  | 43 | ; | 
|---|
|  | 44 | ;   - store unique indicator | 
|---|
|  | 45 | S ^UTILITY($J,"ODS-PT-ADM",DFN,FAC)="" | 
|---|
|  | 46 | I BOS]"" S ^UTILITY($J,"ODS-PT-ADM-BOS",BOS,DFN,FAC)="" | 
|---|
|  | 47 | I SPC]"" S ^UTILITY($J,"ODS-PT-ADM-SPC",SPC,DFN,FAC)="" | 
|---|
|  | 48 | Q | 
|---|
|  | 49 | ; | 
|---|
|  | 50 | DIS ;  -- count total discharges | 
|---|
|  | 51 | Q:FAC=""!('$P(N,"^",15))!('A1B2CHK) | 
|---|
|  | 52 | S:'$D(^UTILITY($J,"ODS-DIS",FAC)) ^(FAC)=0 S ^(FAC)=^(FAC)+1 | 
|---|
|  | 53 | S:'$D(^UTILITY($J,"ODS-DIS-NAT")) ^("ODS-DIS-NAT")=0 S ^("ODS-DIS-NAT")=("ODS-DIS-NAT")+1 | 
|---|
|  | 54 | Q:'$P(N,"^",11) | 
|---|
|  | 55 | ;  -- count transfers to non-va facilities | 
|---|
|  | 56 | S:'$D(^UTILITY($J,"ODS-TRF-NVA",FAC)) ^(FAC)=0 S ^(FAC)=^(FAC)+1 | 
|---|
|  | 57 | S:'$D(^UTILITY($J,"ODS-TRF-NVA-NAT")) ^("ODS-TRF-NVA-NAT")=0 S ^("ODS-TRF-NVA-NAT")=^("ODS-TRF-NVA-NAT")+1 | 
|---|
|  | 58 | Q | 
|---|
|  | 59 | ; | 
|---|
|  | 60 | PTRM ;  -- count patients remaining | 
|---|
|  | 61 | Q:FAC=""!('$P(N,"^",15))!('A1B2CHK) | 
|---|
|  | 62 | S:'$D(^UTILITY($J,"ODS-PTRM",FAC)) ^(FAC)=0 S ^(FAC)=^(FAC)+1 | 
|---|
|  | 63 | S:'$D(^UTILITY($J,"ODS-PTRM-NAT")) ^("ODS-PTRM-NAT")=0 S ^("ODS-PTRM-NAT")=^("ODS-PTRM-NAT")+1 | 
|---|
|  | 64 | Q | 
|---|
|  | 65 | ; | 
|---|
|  | 66 | TRF ;  -- count patient transfers | 
|---|
|  | 67 | Q:FAC=""!('$P(N,"^",15))!($P(N,"^",11)="")!('A1B2CHK) | 
|---|
|  | 68 | S TYP=$P(N,"^",11),SUBS=$S(TYP:"ODS-DISP-NVA",1:"ODS-DISP-VA") | 
|---|
|  | 69 | S:'$D(^UTILITY($J,SUBS,FAC)) ^(FAC)=0 S ^(FAC)=^(FAC)+1 | 
|---|
|  | 70 | S SUBS=SUBS_"-NAT" | 
|---|
|  | 71 | S:'$D(^UTILITY($J,SUBS)) ^(SUBS)=0 S ^(SUBS)=^(SUBS)+1 | 
|---|
|  | 72 | Q | 
|---|
|  | 73 | ; | 
|---|
|  | 74 | FAC ;  --set up facility number/name | 
|---|
|  | 75 | S FAC=$P(N,"^",7) Q:FAC=""!('$P(N,"^",15)) | 
|---|
|  | 76 | S A1B2CHK=0,X=$S($D(A1B2NTY):$P(A1B2NTY,U,2),1:"") | 
|---|
|  | 77 | I $S(X=""!(X="A"):1,X="R":$P(N,U,9)=A1B2VRG,X="V":$P(N,U,7)=A1B2FN,1:0) S A1B2CHK=1 | 
|---|
|  | 78 | Q:'A1B2CHK | 
|---|
|  | 79 | I '$D(^UTILITY($J,"ODS-FAC",FAC)) S ^UTILITY($J,"ODS-FAC",FAC)=$P(N,"^",8) | 
|---|
|  | 80 | Q | 
|---|