Home   Package List   Routine Alphabetical List   Global Alphabetical List   FileMan Files List   FileMan Sub-Files List   Package Component Lists   Package-Namespace Mapping  
Routine: APCLRX91

APCLRX91.m

Go to the documentation of this file.
  1. APCLRX91 ; IHS/CMI/LAB - RX'S DISPENSED BY DATE/TIME ;
  1. ;;2.0;IHS PCC SUITE;;MAY 14, 2009
  1. ;APCL1 = Before 8:00
  1. ;APCL2 = 8:00 - 8:59
  1. ;APCL3 = 9:00 - 9:59
  1. ;APCL4 = 10:00 - 10:59
  1. ;APCL5 11:00 - 11:59
  1. ;APCL6 12:00 - 12:59
  1. ;APCL7 1:00 - 1:159
  1. ;APCL8 2:00 - 2:59
  1. ;APCL9 3:00 - 3:59
  1. ;APCL10 4:00 - 4:59
  1. ;APCL11 5:00 - 5:59
  1. ;APCL12 6:00 - 6:59
  1. ;APCL13 7:00 - 7:59
  1. ;APCL14 8:00 - 8:59
  1. ;APCL15 9:00 - 9:59
  1. ;APCL16 10:00 - 10:59
  1. ;APCL17 11:00 - 11:59
  1. ;
  1. START ;
  1. S APCLBT=$H,APCLJOB=$J,APCL1=0,APCL2=0,APCL3=0,APCL4=0,APCL5=0,APCL6=0,APCL7=0,APCL8=0,APCL9=0,APCLG=0,APCLGO=0,APCL10=0,APCL11=0,APCL12=0
  1. S APCL13=0,APCL14=0,APCL15=0,APCL16=0,APCL17=0,APCLGTOT=0
  1. K ^XTMP("APCLCV",APCLJOB,APCLBT)
  1. V ; Run by visit date
  1. S APCLSD=APCLSD_".9999" F S APCLSD=$O(^PSRX("AL",APCLSD)) Q:APCLSD=""!((APCLSD\1)>APCLED) D V1
  1. ;
  1. XIT ;
  1. D EOJ
  1. S APCLET=$H
  1. Q
  1. V1 ;
  1. ;S APCLVIEN="" F S APCLVIEN=$O(^PSRX("AL",APCLSD,APCLVIEN)) Q:APCLVIEN'=+APCLVIEN I $D(^PSRX(APCLVIEN,0)) S APCLVREC=^(0) D PROC
  1. ;
  1. ;Commented above line and added lines below to look at both original
  1. ;fills and refills....dloz 8-23-01
  1. ;
  1. S APCLVIEN="" F S APCLVIEN=$O(^PSRX("AL",APCLSD,APCLVIEN)) Q:APCLVIEN'=+APCLVIEN D
  1. .S APCLVBZL="" F S APCLVBZL=$O(^PSRX("AL",APCLSD,APCLVIEN,APCLVBZL)) Q:APCLVBZL="" D
  1. ..I $D(^PSRX(APCLVIEN,0)) S APCLVREC=^(0)
  1. ..I APCLVBZL'=0 D PROC1 Q
  1. ..E D PROC
  1. Q
  1. ;
  1. PROC1 ;Captures refill release date stats
  1. I APCLLOC]"",APCLLOC'=$P(^PSRX(APCLVIEN,1,APCLVBZL,0),U,9) Q
  1. S DFN=$P(APCLVREC,U,2)
  1. Q:$$DEMO^APCLUTL(DFN,$G(APCLDEMO))
  1. S APCLRXTM=$P(^PSRX(APCLVIEN,1,APCLVBZL,0),U,18)
  1. S APCLRXHR=$E(APCLRXTM,9,12)
  1. D DOCOUNT
  1. Q
  1. ;End of modifications...dloz
  1. PROC ;
  1. I APCLLOC]"",APCLLOC'=$P(^PSRX(APCLVIEN,2),U,9) Q ;Quit if not Division = 9th piece
  1. S DFN=$P(APCLVREC,U,2) ;Patient = 2nd piece
  1. Q:$P(^DPT(DFN,0),U)="DEMO,PATIENT"
  1. ;
  1. HRSTART ;Start Hour Counts <8>8>9>10>11 8 hour day
  1. ;S APCLGTOT=APCLGTOT+1 ; Grand Total
  1. S APCLRXTM=$P(^PSRX(APCLVIEN,2),U,13) ; Release Date/time
  1. S APCLRXHR=$E(APCLRXTM,9,12) ; Military Time Extraction
  1. ;
  1. DOCOUNT ;Start Count by hour
  1. Q:'$D(APCLRXHR)
  1. S APCLGTOT=APCLGTOT+1 ; GRAND TOTAL
  1. I APCLRXHR<"0800" D TBEFORE Q
  1. I APCLRXHR>"0799"&(APCLRXHR<"0900") D T0800 Q
  1. I APCLRXHR>"0899"&(APCLRXHR<"1000") D T0900 Q
  1. I APCLRXHR>"0999"&(APCLRXHR<"1100") D T1000 Q
  1. I APCLRXHR>"1099"&(APCLRXHR<"1200") D T1100 Q
  1. I APCLRXHR>"1199"&(APCLRXHR<"1300") D T1200 Q
  1. I APCLRXHR>"1299"&(APCLRXHR<"1400") D T1300 Q
  1. I APCLRXHR>"1399"&(APCLRXHR<"1500") D T1400 Q
  1. I APCLRXHR>"1499"&(APCLRXHR<"1600") D T1500 Q
  1. I APCLRXHR>"1599"&(APCLRXHR<"1700") D T1600 Q
  1. I APCLRXHR>"1699"&(APCLRXHR<"1800") D T1700 Q
  1. I APCLRXHR>"1799"&(APCLRXHR<"1900") D T1800 Q
  1. I APCLRXHR>"1899"&(APCLRXHR<"2000") D T1900 Q
  1. I APCLRXHR>"1999"&(APCLRXHR<"2100") D T2000 Q
  1. I APCLRXHR>"2099"&(APCLRXHR<"2200") D T2100 Q
  1. I APCLRXHR>"2199"&(APCLRXHR<"2300") D T2200 Q
  1. I APCLRXHR>"2299" D TAFTER Q
  1. Q
  1. ;
  1. TBEFORE ;Before 8:00 am RX's
  1. S APCL1=APCL1+1 ; Count the RX on First Hour Type
  1. Q
  1. ;
  1. T0800 ;Counts for 8:00 to 9:00 RX's
  1. S APCL2=APCL2+1 ; COUNT ANOTHER TIMEFRAME
  1. Q
  1. ;
  1. T0900 ;Counts 9:00 - 10:00
  1. S APCL3=APCL3+1
  1. Q
  1. ;
  1. T1000 ;Counts 10:00-11:00
  1. S APCL4=APCL4+1
  1. Q
  1. ;
  1. T1100 ;Counts 11:00-12:00
  1. S APCL5=APCL5+1
  1. Q
  1. ;
  1. T1200 ;Counts 12:00-1:00
  1. S APCL6=APCL6+1
  1. Q
  1. ;
  1. T1300 ;Counts 1:00 - 2:00
  1. S APCL7=APCL7+1
  1. Q
  1. ;
  1. T1400 ;Counts 2:00 - 3:00
  1. S APCL8=APCL8+1
  1. Q
  1. ;
  1. T1500 ;Counts 3:00 - 4:00
  1. S APCL9=APCL9+1
  1. Q
  1. ;
  1. T1600 ;Counts 4:00 - 5:00
  1. S APCL10=APCL10+1
  1. Q
  1. ;
  1. T1700 ;Counts 5:00 - 6:00
  1. S APCL11=APCL11+1
  1. Q
  1. ;
  1. T1800 ;Counts 6:00 - 7:00
  1. S APCL12=APCL12+1
  1. Q
  1. ;
  1. T1900 ;Counts 7:00- 8:00
  1. S APCL13=APCL13+1
  1. Q
  1. ;
  1. T2000 ;Counts 8:00-9:00
  1. S APCL14=APCL14+1
  1. Q
  1. ;
  1. T2100 ;Counts 9:00 - 10:00
  1. S APCL15=APCL15+1
  1. Q
  1. ;
  1. T2200 ;Counts 10:00-11:00
  1. S APCL16=APCL16+1
  1. Q
  1. ;
  1. TAFTER ;Counts 11:00-11:59
  1. S APCL17=APCL17+1
  1. Q
  1. EOJ K APCLVLOC,APCLVREC,APCLSKIP,APCLAP,APCLDISC,APCLDPTR,APCLLOCC,APCLCLN
  1. K X,X1,X2
  1. Q
  1. ;
  1. ;