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

BQIIPCW.m

Go to the documentation of this file.
  1. BQIIPCW ;GDIT/HCSD/ALA-Get IPC Weekly Data by Provider ; 28 Sep 2017 8:00 AM
  1. ;;2.7;ICARE MANAGEMENT SYSTEM;**1**;Dec 19, 2017;Build 12
  1. ;;
  1. ;
  1. RET(DATA,PROV,TMFRAME,CRIPC) ;EP -- BQI GET IPC PROV WEEKLY
  1. NEW UID,II,HDR,C1,C2,C3,C4,NAME,HEAD,HX,PEC,SORT,QFL,PCT,CT,DDATA,TAB,STAB
  1. NEW CPER,PPER,TIT,BQMON,DATE,TAB,STAB,TNM,FAC,QDF,RFROM,PPIEN,TYPE,RTHRU,TRM
  1. S UID=$S($G(ZTSK):"Z"_ZTSK,1:$J)
  1. S DATA=$NA(^TMP("BQIMUPROV",UID))
  1. K @DATA
  1. S II=0
  1. NEW $ESTACK,$ETRAP S $ETRAP="D ERR^BQIIPCM D UNWIND^%ZTER" ; SAC 2006 2.2.3.3.2
  1. ; Get current IPC
  1. S CRIPC=$G(CRIPC,"")
  1. I CRIPC="" S CRIPC=$P($G(^BQI(90508,1,11)),U,1)
  1. S CRN=$O(^BQI(90508,1,22,"B",CRIPC,"")) I CRN="" Q
  1. ;
  1. S TMFRAME=$G(TMFRAME,"") I TMFRAME'="" D
  1. . I TMFRAME?.N S TMFRAME=$P(^BQI(90506.9,TMFRAME,0),"^",1)
  1. . S PPIEN="IPC",TYPE="IPWRANGE"
  1. . D RANGE^BQIDCAH1(TMFRAME,PPIEN,TYPE)
  1. ;
  1. K Z
  1. S HDR="T00050PROVIDER^T00075IPC_MEAS^T00030CATEGORY^T00005PERCENT_GOAL^"
  1. S FAC=$$HME^BQIGPUTL()
  1. S DATE=$S(TMFRAME'="":RTHRU+1,1:""),QDF=0
  1. F S DATE=$O(^BQIPROV("AE",DATE),-1) Q:DATE=""!(QDF) D Q:QDF
  1. . S Z(DATE)="N/A^Not Applicable"
  1. . I DATE=$G(RFROM) S QDF=1 Q
  1. . I DATE<$G(RFROM) K Z(DATE) S QDF=1 Q
  1. S DATE="" F S DATE=$O(Z(DATE),-1) Q:DATE="" D HH(DATE)
  1. S HDR=HDR_"T00004MEDIAN"
  1. S @DATA@(II)=$$TKO^BQIUL1(HDR,"^")_$C(30)
  1. ;
  1. S (C1,C2,C3,C4,CT,PCT)=0
  1. S PROV=$G(PROV,"")
  1. I PROV'="" D RTE(PROV) G DONE
  1. I PROV="" S PROV=+PROV
  1. F S PROV=$O(^BQIPROV(PROV)) Q:'PROV D
  1. . I $D(^BQIPROV(PROV,30)) D RTE(PROV)
  1. ;
  1. DONE ;
  1. S II=II+1,@DATA@(II)=$C(31)
  1. Q
  1. ;
  1. HH(DATE) ;EP
  1. S TIT=$$FMTMDY^BQIUL1(DATE)
  1. S HDR=HDR_"T00030"_TIT_U_"T00045HIDE_"_TIT_U
  1. Q
  1. ;
  1. ERR ;
  1. D ^%ZTER
  1. NEW Y,ERRDTM
  1. S Y=$$NOW^XLFDT() X ^DD("DD") S ERRDTM=Y
  1. S BMXSEC="Recording that an error occurred at "_ERRDTM
  1. I $D(II),$D(DATA) S II=II+1,@DATA@(II)=$C(31)
  1. Q
  1. ;
  1. RTE(PRV) ;EP
  1. S DDATA="",TRM=0
  1. I $P($G(^VA(200,PRV,0)),U,13)'="" S TRM=1
  1. S PRVR=PRV_$C(28)_$S(TRM:"*",1:"")_$P($G(^VA(200,PRV,0)),U,1)
  1. S DDATA=PRVR_U
  1. S CYR=$E(DT,1,3)
  1. S ORD=""
  1. F S ORD=$O(^BQI(90508,1,22,CRN,1,"C",ORD)) Q:ORD="" D
  1. . S IDD="",QFL=0
  1. . F S IDD=$O(^BQI(90508,1,22,CRN,1,"C",ORD,IDD)) Q:IDD="" D
  1. .. S ID=$P(^BQI(90508,1,22,CRN,1,IDD,0),U,1),MEAS=$P(^(0),U,4),GOAL=$P(^(0),U,12)
  1. .. I $P(^BQI(90508,1,22,CRN,1,IDD,0),U,7)=1 S QFL=1 Q
  1. .. S TAB=$P(^BQI(90508,1,22,CRN,1,IDD,0),U,13)
  1. .. S STAB=$P(^BQI(90508,1,22,CRN,1,IDD,0),U,14)
  1. .. I TAB="A",STAB'="P" S QFL=1 Q
  1. .. NEW DA,IENS
  1. .. S DA(2)=1,DA(1)=CRN,DA=IDD,IENS=$$IENS^DILF(.DA)
  1. .. S CAT=$$GET1^DIQ(90508.221,IENS,.03,"E")
  1. .. S TAB=$$GET1^DIQ(90508.221,IENS,.13,"I")
  1. .. S STAB=$$GET1^DIQ(90508.221,IENS,.14,"I")
  1. .. I TAB="A",STAB="F" S QFL=1 Q
  1. .. I CAT="" D
  1. ... S CODE=ID
  1. ... S RIEN=$O(^BQI(90506.1,"B",CODE,"")) I RIEN="" Q
  1. ... S CAT=$$GET1^DIQ(90506.1,RIEN_",",3.02,"E")
  1. .. S DDATA=DDATA_ID_$C(28)_MEAS_U_CAT_U_GOAL_U
  1. .. S IDN=$O(^BQIPROV(PRV,30,"B",ID,"")) I IDN="" Q
  1. .. S DTI="",MC=0
  1. .. F S DTI=$O(Z(DTI)) Q:DTI="" D
  1. ... S MSDN=$O(^BQIPROV(PRV,30,IDN,2,"AC",DTI,""))
  1. ... I MSDN="" S Z(DTI)="N/A^Not Applicable" Q
  1. ... S DEN=+$P(^BQIPROV(PRV,30,IDN,2,MSDN,0),U,2),NUM=+$P(^BQIPROV(PRV,30,IDN,2,MSDN,0),U,3),MC=MC+1
  1. ... I ID="IPC_TOTP" D Q
  1. .... S Z(DTI)=DEN_"^Total Patients: "_DEN
  1. ... I ID="IPC_REVG" D Q
  1. .... I DEN=0 S Z(DTI)="$0^Visits: 0 Billed: 0" Q
  1. .... I DEN'=0,NUM=0 S Z(DTI)="$0^Visits: 0 Billed: 0" Q
  1. .... I DEN'=0,NUM'=0 S Z(DTI)=$$DOL(NUM/DEN)_U_"Visits: "_DEN_" Billed: "_$$DOL(NUM) Q
  1. ... I DEN=0 S Z(DTI)="0%^Numerator: 0 Denominator: 0",M(0,MC)="" Q
  1. ... I DEN'=0,NUM=0 S Z(DTI)="0%^Numerator: 0 Denominator: "_DEN,M(0,MC)="" Q
  1. ... I NUM'=0 D
  1. .... S VAL=$J((NUM/DEN)*100,3,0),M($$TRIM^BQIUL1(VAL," "),MC)=""
  1. .... S VAL=$$TRIM^BQIUL1(VAL," ")_"%"
  1. .... S Z(DTI)=VAL_U_"Numerator: "_NUM_" Denominator: "_DEN
  1. . I QFL Q ;
  1. . ;S DTI="",TOT=0,TNM=0 F S DTI=$O(Z(DTI)) Q:DTI="" S TOT=TOT+1 S:Z(DTI)="" TNM=TNM+1
  1. . ;I TNM=TOT Q
  1. . I '$D(M) S MEDIAN="^"
  1. . I $D(M) D MEDIAN^BQIIPCM(.M,.MEDIAN)
  1. . S DTI=""
  1. . F S DTI=$O(Z(DTI),-1) Q:DTI="" S DDATA=DDATA_Z(DTI)_U
  1. . S DDATA=DDATA_MEDIAN
  1. . S DDATA=$$TKO^BQIUL1(DDATA,"^")
  1. . S II=II+1,@DATA@(II)=DDATA_$C(30)
  1. . K Z,M
  1. . S DDATA=PRVR_U
  1. . S FAC=$$HME^BQIGPUTL()
  1. . S DATE=$S(TMFRAME'="":RTHRU+1,1:""),QDF=0
  1. . F S DATE=$O(^BQIPROV("AE",DATE),-1) Q:DATE=""!(QDF) D Q:QDF
  1. .. S Z(DATE)="N/A^Not Applicable"
  1. .. I DATE=$G(RFROM) S QDF=1 Q
  1. .. I DATE<$G(RFROM) K Z(DATE) S QDF=1 Q
  1. Q
  1. ;
  1. FAC(DATA,TMFRAME,CRIPC) ;EP -- BQI GET IPC FAC WEEKLY
  1. NEW UID,II,HDR,FAC,CYR,DATE,Z,I,IDN,ID,DTI,MSDN,DEN,NUM,VAL,DDATA,TIT,BQMON,DATE
  1. NEW TAB,STAB
  1. S UID=$S($G(ZTSK):"Z"_ZTSK,1:$J)
  1. S DATA=$NA(^TMP("BQIIPCF",UID))
  1. K @DATA
  1. S II=0
  1. NEW $ESTACK,$ETRAP S $ETRAP="D ERR^BQIIPCM D UNWIND^%ZTER" ; SAC 2006 2.2.3.3.2
  1. ; Get current IPC
  1. S CRIPC=$G(CRIPC,"")
  1. I CRIPC="" S CRIPC=$P($G(^BQI(90508,1,11)),U,1)
  1. S CRN=$O(^BQI(90508,1,22,"B",CRIPC,"")) I CRN="" Q
  1. ;
  1. S TMFRAME=$G(TMFRAME,"") I TMFRAME'="" D
  1. . I TMFRAME?.N S TMFRAME=$P(^BQI(90506.9,TMFRAME,0),"^",1)
  1. . S PPIEN="IPC",TYPE="IPWRANGE"
  1. . D RANGE^BQIDCAH1(TMFRAME,PPIEN,TYPE)
  1. ;
  1. K Z
  1. S HDR="T00030FACILITY^T00075IPC_MEAS^T00030CATEGORY^T00005PERCENT_GOAL^"
  1. S FAC=$$HME^BQIGPUTL()
  1. S DATE=$S(TMFRAME'="":RTHRU+1,1:""),QDF=0
  1. F S DATE=$O(^BQIFAC("AD",DATE),-1) Q:DATE=""!(QDF) D Q:QDF
  1. . S Z(DATE)="N/A^Not Applicable"
  1. . I DATE=$G(RFROM) S QDF=1 Q
  1. . I DATE<$G(RFROM) K Z(DATE) S QDF=1 Q
  1. S DATE="" F S DATE=$O(Z(DATE),-1) Q:DATE="" D HH(DATE)
  1. S HDR=HDR_"T00004MEDIAN"
  1. S @DATA@(II)=$$TKO^BQIUL1(HDR,"^")_$C(30)
  1. ;
  1. S FAC=$$HME^BQIGPUTL()
  1. S II=II+1,SAME=FAC_$C(28)_$P(^DIC(4,FAC,0),U,1)_U,DDATA=SAME
  1. ;
  1. S ORD=""
  1. F S ORD=$O(^BQI(90508,1,22,CRN,1,"C",ORD)) Q:ORD="" D
  1. . S IDD="",QFL=0
  1. . F S IDD=$O(^BQI(90508,1,22,CRN,1,"C",ORD,IDD)) Q:IDD="" D
  1. .. S ID=$P(^BQI(90508,1,22,CRN,1,IDD,0),U,1),MEAS=$P(^(0),U,4),GOAL=$P(^(0),U,12)
  1. .. I $P(^BQI(90508,1,22,CRN,1,IDD,0),U,7)=1 S QFL=1 Q
  1. .. S TAB=$P(^BQI(90508,1,22,CRN,1,IDD,0),U,13)
  1. .. S STAB=$P(^BQI(90508,1,22,CRN,1,IDD,0),U,14)
  1. .. ;I TAB="A",STAB'="F" S QFL=1 Q
  1. .. NEW DA,IENS
  1. .. S DA(2)=1,DA(1)=CRN,DA=IDD,IENS=$$IENS^DILF(.DA)
  1. .. S CAT=$$GET1^DIQ(90508.221,IENS,.03,"E")
  1. .. I CAT="" D
  1. ... S CODE=ID
  1. ... S RIEN=$O(^BQI(90506.1,"B",CODE,"")) I RIEN="" Q
  1. ... S CAT=$$GET1^DIQ(90506.1,RIEN_",",3.02,"E")
  1. .. S DDATA=DDATA_ID_$C(28)_MEAS_U_CAT_U_GOAL_U
  1. .. S IDN=$O(^BQIFAC(FAC,30,"B",ID,"")) I IDN="" Q
  1. .. S DTI="",MC=0
  1. .. F S DTI=$O(Z(DTI)) Q:DTI="" D
  1. ... S MSDN=$O(^BQIFAC(FAC,30,IDN,2,"AC",DTI,""))
  1. ... I MSDN="" S Z(DTI)="N/A^Not Applicable" Q
  1. ... S DEN=+$P(^BQIFAC(FAC,30,IDN,2,MSDN,0),U,2),NUM=+$P(^BQIFAC(FAC,30,IDN,2,MSDN,0),U,3),MC=MC+1
  1. ... I ID="IPC_TOTP" D Q
  1. .... S Z(DTI)=DEN_"^Total Patients: "_DEN
  1. ... I ID="IPC_REVG" D Q
  1. .... I DEN=0 S Z(DTI)="$0^Visits: 0 Billed: 0" Q
  1. .... I DEN'=0,NUM=0 S Z(DTI)="$0^Visits: 0 Billed: 0" Q
  1. .... I DEN'=0,NUM'=0 S Z(DTI)=$$DOL(NUM/DEN)_U_"Visits: "_DEN_" Billed: "_$$DOL(NUM) Q
  1. ... I DEN=0 S Z(DTI)="0%^Numerator: 0 Denominator: 0",M(0,MC)="" Q
  1. ... I DEN'=0,NUM=0 S Z(DTI)="0%^Numerator: 0 Denominator: "_DEN,M(0,MC)="" Q
  1. ... I NUM'=0 D
  1. .... S VAL=$J((NUM/DEN)*100,3,0),M($$TRIM^BQIUL1(VAL," "),MC)=""
  1. .... S VAL=$$TRIM^BQIUL1(VAL," ")_"%"
  1. .... S Z(DTI)=VAL_U_"Numerator: "_NUM_" Denominator: "_DEN
  1. . I QFL=1 Q ;
  1. . ;S DTI="",TOT=0,TNM=0 F S DTI=$O(Z(DTI)) Q:DTI="" S TOT=TOT+1 S:Z(DTI)="" TNM=TNM+1
  1. . ;I TNM=TOT Q
  1. . I '$D(M) S MEDIAN="^"
  1. . I $D(M) D MEDIAN^BQIIPCM(.M,.MEDIAN)
  1. . S DTI=""
  1. . F S DTI=$O(Z(DTI),-1) Q:DTI="" S DDATA=DDATA_Z(DTI)_U
  1. . S DDATA=DDATA_MEDIAN
  1. . S @DATA@(II)=$$TKO^BQIUL1(DDATA,U)_$C(30)
  1. . S DDATA=SAME
  1. . S II=II+1
  1. . K Z,M
  1. . S DATE="",FAC=$$HME^BQIGPUTL()
  1. . S DATE=$S(TMFRAME'="":RTHRU+1,1:""),QDF=0
  1. . F S DATE=$O(^BQIFAC(FAC,30,"AC",DATE),-1) Q:DATE=""!(QDF) D Q:QDF
  1. .. S Z(DATE)="N/A^Not Applicable"
  1. .. I DATE=$G(RFROM) S QDF=1 Q
  1. .. I DATE<$G(RFROM) K Z(DATE) S QDF=1 Q
  1. S @DATA@(II)=$C(31)
  1. Q
  1. ;
  1. DOL(X) ;EP - Dollar formatter
  1. S X2="2$" D COMMA^%DTC S X=X_$E("00",1,2-$L($P(X,".",2))) K X2
  1. Q $$TKO^BQIUL1($$TRIM^BQIUL1(X," ")," ")
  1. ;
  1. TEAM(DATA,TEAM,TMFRAME,CRIPC) ;EP - BQI GET IPC TEAM WEEKLY
  1. NEW UID,II,HDR,C1,C2,C3,C4,NAME,HEAD,HX,PEC,SORT,QFL,PCT,CT,DDATA,TAB,STAB
  1. NEW CPER,PPER,TIT,BQMON,DATE,TAB,STAB,TNM,FAC,QDF,RFROM,PPIEN,TYPE,RTHRU
  1. S UID=$S($G(ZTSK):"Z"_ZTSK,1:$J)
  1. S DATA=$NA(^TMP("BQIITEAM",UID))
  1. K @DATA
  1. S II=0
  1. NEW $ESTACK,$ETRAP S $ETRAP="D ERR^BQIIPCM D UNWIND^%ZTER" ; SAC 2006 2.2.3.3.2
  1. ; Get current IPC
  1. S CRIPC=$G(CRIPC,"")
  1. I CRIPC="" S CRIPC=$P($G(^BQI(90508,1,11)),U,1)
  1. S CRN=$O(^BQI(90508,1,22,"B",CRIPC,"")) I CRN="" Q
  1. ;
  1. S TMFRAME=$G(TMFRAME,"") I TMFRAME'="" D
  1. . I TMFRAME?.N S TMFRAME=$P(^BQI(90506.9,TMFRAME,0),"^",1)
  1. . S PPIEN="IPC",TYPE="IPWRANGE"
  1. . D RANGE^BQIDCAH1(TMFRAME,PPIEN,TYPE)
  1. ;
  1. K Z
  1. S HDR="T00050TEAM^T00075IPC_MEAS^T00030CATEGORY^T00005PERCENT_GOAL^"
  1. S FAC=$$HME^BQIGPUTL()
  1. S DATE=$S(TMFRAME'="":RTHRU+1,1:""),QDF=0
  1. F S DATE=$O(^BQITEAM("AC",DATE),-1) Q:DATE=""!(QDF) D Q:QDF
  1. . S Z(DATE)="N/A^Not Applicable"
  1. . I DATE=$G(RFROM) S QDF=1 Q
  1. . I DATE<$G(RFROM) K Z(DATE) S QDF=1 Q
  1. S DATE="" F S DATE=$O(Z(DATE),-1) Q:DATE="" D HH(DATE)
  1. S HDR=HDR_"T00004MEDIAN"
  1. S @DATA@(II)=$$TKO^BQIUL1(HDR,"^")_$C(30)
  1. ;
  1. S (C1,C2,C3,C4,CT,PCT)=0
  1. S TEAM=$G(TEAM,"")
  1. I TEAM'="" D G DONE
  1. . I TEAM'?.N S TEAM=$O(^BQITEAM("B",TEAM,"")) I TEAM="" Q
  1. . D RTM(TEAM)
  1. I TEAM="" S TEAM=+TEAM
  1. F S TEAM=$O(^BQITEAM(TEAM)) Q:'TEAM D
  1. . I $D(^BQITEAM(TEAM,10)) D RTM(TEAM)
  1. S II=II+1,@DATA@(II)=$C(31)
  1. Q
  1. ;
  1. RTM(TMN) ;EP
  1. S DDATA="",MEDIAN=""
  1. S TEM=TMN_$C(28)_$P($G(^BQITEAM(TMN,0)),U,1)
  1. S DDATA=TEM_U
  1. S CYR=$E(DT,1,3)
  1. S ORD=""
  1. F S ORD=$O(^BQI(90508,1,22,CRN,1,"C",ORD)) Q:ORD="" D
  1. . S IDD="",QFL=0 K M
  1. . F S IDD=$O(^BQI(90508,1,22,CRN,1,"C",ORD,IDD)) Q:IDD="" D
  1. .. S ID=$P(^BQI(90508,1,22,CRN,1,IDD,0),U,1),MEAS=$P(^(0),U,4),GOAL=$P(^(0),U,12)
  1. .. I $P(^BQI(90508,1,22,CRN,1,IDD,0),U,7)=1 S QFL=1 Q
  1. .. S TAB=$P(^BQI(90508,1,22,CRN,1,IDD,0),U,13)
  1. .. S STAB=$P(^BQI(90508,1,22,CRN,1,IDD,0),U,14)
  1. .. I TAB="A",STAB'="T" S QFL=1 Q
  1. .. NEW DA,IENS
  1. .. S DA(2)=1,DA(1)=CRN,DA=IDD,IENS=$$IENS^DILF(.DA)
  1. .. S CAT=$$GET1^DIQ(90508.221,IENS,.03,"E")
  1. .. S TAB=$$GET1^DIQ(90508.221,IENS,.13,"I")
  1. .. S STAB=$$GET1^DIQ(90508.221,IENS,.14,"I")
  1. .. I TAB="A",STAB="F" S QFL=1 Q
  1. .. I CAT="" D
  1. ... S CODE=ID
  1. ... S RIEN=$O(^BQI(90506.1,"B",CODE,"")) I RIEN="" Q
  1. ... S CAT=$$GET1^DIQ(90506.1,RIEN_",",3.02,"E")
  1. .. S DDATA=DDATA_ID_$C(28)_MEAS_U_CAT_U_GOAL_U
  1. .. S IDN=$O(^BQITEAM(TMN,10,"B",ID,"")) I IDN="" Q
  1. .. S DTI="",MC=0
  1. .. F S DTI=$O(Z(DTI)) Q:DTI="" D
  1. ... S MSDN=$O(^BQITEAM(TMN,10,IDN,20,"AC",DTI,""))
  1. ... I MSDN="" S Z(DTI)="N/A^Not Applicable" Q
  1. ... ;S DEN=+$P(^BQITEAM(TMN,10,IDN,20,MSDN,0),U,2),NUM=+$P(^BQITEAM(TMN,10,IDN,20,MSDN,0),U,3),MC=MC+1
  1. ... I ID="IPC_TOTP" D Q
  1. .... I MSDN="" S Z(DTI)="N/A^Not Applicable" Q
  1. ... S DEN=+$P(^BQITEAM(TMN,10,IDN,20,MSDN,0),U,2),NUM=+$P(^BQITEAM(TMN,10,IDN,20,MSDN,0),U,3),MC=MC+1
  1. ... I ID="IPC_TOTP" D Q
  1. .... S Z(DTI)=DEN_"^Total Patients: "_DEN
  1. ... I ID="IPC_REVG" D Q
  1. .... I DEN=0 S Z(DTI)="$0^Visits: 0 Billed: 0" Q
  1. .... I DEN'=0,NUM=0 S Z(DTI)="$0^Visits: 0 Billed: 0" Q
  1. .... I DEN'=0,NUM'=0 S Z(DTI)=$$DOL(NUM/DEN)_U_"Visits: "_DEN_" Billed: "_$$DOL(NUM) Q
  1. ... I DEN=0 S Z(DTI)="0%^Numerator: 0 Denominator: 0",M(0,MC)="" Q
  1. ... I DEN'=0,NUM=0 S Z(DTI)="0%^Numerator: 0 Denominator: "_DEN,M(0,MC)="" Q
  1. ... I NUM'=0 D
  1. .... S VAL=$J((NUM/DEN)*100,3,0),M($$TRIM^BQIUL1(VAL," "),MC)=""
  1. .... S VAL=$$TRIM^BQIUL1(VAL," ")_"%"
  1. .... S Z(DTI)=VAL_U_"Numerator: "_NUM_" Denominator: "_DEN
  1. ... S MSDN=$O(^BQITEAM(TMN,10,IDN,20,"AC",DTI,""))
  1. . I QFL Q ;
  1. . ;S DTI="",TOT=0,TNM=0 F S DTI=$O(Z(DTI)) Q:DTI="" S TOT=TOT+1 S:Z(DTI)="" TNM=TNM+1
  1. . ;I TNM=TOT Q
  1. . I '$D(M) S MEDIAN="^"
  1. . I $D(M) D MEDIAN^BQIIPCM(.M,.MEDIAN)
  1. . S DTI=""
  1. . F S DTI=$O(Z(DTI),-1) Q:DTI="" S DDATA=DDATA_Z(DTI)_U
  1. . S DDATA=DDATA_MEDIAN
  1. . S DDATA=$$TKO^BQIUL1(DDATA,"^")
  1. . S II=II+1,@DATA@(II)=DDATA_$C(30)
  1. . K Z
  1. . S DDATA=TEM_U
  1. . S FAC=$$HME^BQIGPUTL()
  1. . S DATE=$S(TMFRAME'="":RTHRU+1,1:""),QDF=0
  1. . F S DATE=$O(^BQITEAM("AC",DATE),-1) Q:DATE=""!(QDF) D Q:QDF
  1. .. S Z(DATE)="N/A^Not Applicable"
  1. .. I DATE=$G(RFROM) S QDF=1 Q
  1. .. I DATE<$G(RFROM) K Z(DATE) S QDF=1 Q
  1. Q