BSDCCRL ; IHS/ANMC/LJF - LIST TEMPLATE FOR CLINIC CAPACTIY REPORT ;
;;5.3;PIMS;;APR 26, 2002
;
EN ; -- main entry point for BSDRM CLINIC CAPACITY
NEW VALMCNT D TERM^VALM0,CLEAR^VALM1
D EN^VALM("BSDRM CLINIC CAPACITY")
D CLEAR^VALM1
Q
;
HDR ; -- header code
Q
;
INIT ; -- init variables and list array
K ^TMP("BSDCCR",$J),^TMP("BSDCCR1",$J)
D GUIR^XBLM("IHS^BSDCCR2","^TMP(""BSDCCR1"",$J,")
S X=0 F S X=$O(^TMP("BSDCCR1",$J,X)) Q:'X D
. S VALMCNT=X
. S ^TMP("BSDCCR",$J,X,0)=^TMP("BSDCCR1",$J,X)
K ^TMP("BSDCCR1",$J)
Q
;
HELP ; -- help code
S X="?" D DISP^XQORM1 W !!
Q
;
EXIT ; -- exit code
K ^TMP("BSDCCR",$J)
Q
;
EXPND ; -- expand code
Q
;
SUBT(SDTY) ;EP;Print subtitles
; called by SUBT^SCRPW72
N SDI
W !?(SDCOL+44),"Avail.",?(SDCOL+54),"Pct."
I SDPAST W ?(SDCOL+60),"Actual",?(SDCOL+68),"---Future Appts---"
W ! W:SDTY>1 ?(SDCOL),"Clinic Code"
W ?(SDCOL+36),"Clinic",?(SDCOL+45),"Appt.",?(SDCOL+53),"Slots"
W:SDPAST ?(SDCOL+60),"Clinic"
I SDPAST W ?(SDCOL+70),"Total Ave"
W !?(SDCOL),$S(SDTY=1:" Availability Date",1:" Clinic Name")
W ?(SDCOL+34),"Capacity",?(SDCOL+45),"Slots",?(SDCOL+52),"Avail."
W:SDPAST ?(SDCOL+62),"Enc."
I SDPAST W ?(SDCOL+70),"Made Wait"
W !?($S(SDTY>1:SDCOL,1:SDCOL+4)),$E(SDLINE,1,($S(SDPAST:80,1:58)-$S(SDTY=1:4,1:0)))
Q
;
; called by FOOT^SCRPW75
;Input: SDTX=array to return text
S SDTX(1)=SDLINE
S SDTX(2)="NOTE: Clinic Capacity = total # of appointments slots"
S SDTX(3)=" Avail. Appt. Slots = # of slots still open"
S SDTX(4)=" Pct. Slots Avail. = % of slots still open"
I 'SDPAST S SDTX(5)=SDLINE Q
S SDTX(5)=" If past dates selected:"
S SDTX(6)=" Actual Clinic Enc. = # patients seen (checked in)"
S SDTX(7)=" Total Made = # new appointments made that day"
S SDTX(8)=" Ave. Wait = average # days between making appt & appt date"
S SDTX(9)=SDLINE
Q
;
CP ;EP;Get clinic codes for detailed report
; called by CP^SCRPW70
N DIR,SDQUIT,X,CNT,Y
W ! S Y=1,CNT=0
F Q:Y<1 D
. S X=$S(CNT=1:"Another ",1:""),CNT=1
. S Y=$$READ^BDGF("PO^40.7:EMQZ","Select "_X_"Clinic Code")
. Q:Y<1 S CODE=$$GET1^DIQ(40.7,+Y,1),SDSORT(CODE)=CODE
;
BSDCCRL ; IHS/ANMC/LJF - LIST TEMPLATE FOR CLINIC CAPACTIY REPORT ;
+1 ;;5.3;PIMS;;APR 26, 2002
+2 ;
EN ; -- main entry point for BSDRM CLINIC CAPACITY
+1 NEW VALMCNT
DO TERM^VALM0
DO CLEAR^VALM1
+2 DO EN^VALM("BSDRM CLINIC CAPACITY")
+3 DO CLEAR^VALM1
+4 QUIT
+5 ;
HDR ; -- header code
+1 QUIT
+2 ;
INIT ; -- init variables and list array
+1 KILL ^TMP("BSDCCR",$JOB),^TMP("BSDCCR1",$JOB)
+2 DO GUIR^XBLM("IHS^BSDCCR2","^TMP(""BSDCCR1"",$J,")
+3 SET X=0
FOR
SET X=$ORDER(^TMP("BSDCCR1",$JOB,X))
IF 'X
QUIT
Begin DoDot:1
+4 SET VALMCNT=X
+5 SET ^TMP("BSDCCR",$JOB,X,0)=^TMP("BSDCCR1",$JOB,X)
End DoDot:1
+6 KILL ^TMP("BSDCCR1",$JOB)
+7 QUIT
+8 ;
HELP ; -- help code
+1 SET X="?"
DO DISP^XQORM1
WRITE !!
+2 QUIT
+3 ;
EXIT ; -- exit code
+1 KILL ^TMP("BSDCCR",$JOB)
+2 QUIT
+3 ;
EXPND ; -- expand code
+1 QUIT
+2 ;
SUBT(SDTY) ;EP;Print subtitles
+1 ; called by SUBT^SCRPW72
+2 NEW SDI
+3 WRITE !?(SDCOL+44),"Avail.",?(SDCOL+54),"Pct."
+4 IF SDPAST
WRITE ?(SDCOL+60),"Actual",?(SDCOL+68),"---Future Appts---"
+5 WRITE !
IF SDTY>1
WRITE ?(SDCOL),"Clinic Code"
+6 WRITE ?(SDCOL+36),"Clinic",?(SDCOL+45),"Appt.",?(SDCOL+53),"Slots"
+7 IF SDPAST
WRITE ?(SDCOL+60),"Clinic"
+8 IF SDPAST
WRITE ?(SDCOL+70),"Total Ave"
+9 WRITE !?(SDCOL),$SELECT(SDTY=1:" Availability Date",1:" Clinic Name")
+10 WRITE ?(SDCOL+34),"Capacity",?(SDCOL+45),"Slots",?(SDCOL+52),"Avail."
+11 IF SDPAST
WRITE ?(SDCOL+62),"Enc."
+12 IF SDPAST
WRITE ?(SDCOL+70),"Made Wait"
+13 WRITE !?($SELECT(SDTY>1:SDCOL,1:SDCOL+4)),$EXTRACT(SDLINE,1,($SELECT(SDPAST:80,1:58)-$SELECT(SDTY=1:4,1:0)))
+14 QUIT
+15 ;
+1 ; called by FOOT^SCRPW75
+2 ;Input: SDTX=array to return text
+3 SET SDTX(1)=SDLINE
+4 SET SDTX(2)="NOTE: Clinic Capacity = total # of appointments slots"
+5 SET SDTX(3)=" Avail. Appt. Slots = # of slots still open"
+6 SET SDTX(4)=" Pct. Slots Avail. = % of slots still open"
+7 IF 'SDPAST
SET SDTX(5)=SDLINE
QUIT
+8 SET SDTX(5)=" If past dates selected:"
+9 SET SDTX(6)=" Actual Clinic Enc. = # patients seen (checked in)"
+10 SET SDTX(7)=" Total Made = # new appointments made that day"
+11 SET SDTX(8)=" Ave. Wait = average # days between making appt & appt date"
+12 SET SDTX(9)=SDLINE
+13 QUIT
+14 ;
CP ;EP;Get clinic codes for detailed report
+1 ; called by CP^SCRPW70
+2 NEW DIR,SDQUIT,X,CNT,Y
+3 WRITE !
SET Y=1
SET CNT=0
+4 FOR
IF Y<1
QUIT
Begin DoDot:1
+5 SET X=$SELECT(CNT=1:"Another ",1:"")
SET CNT=1
+6 SET Y=$$READ^BDGF("PO^40.7:EMQZ","Select "_X_"Clinic Code")
+7 IF Y<1
QUIT
SET CODE=$$GET1^DIQ(40.7,+Y,1)
SET SDSORT(CODE)=CODE
End DoDot:1
+8 ;