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

SDAMOCP1.m

Go to the documentation of this file.
  1. SDAMOCP1 ;IOFO BAY PINES/TEH - Detail Print for Cancelled Statistics;4/15/92 ; Compiled January 25, 2007 12:00:46
  1. ;;5.3;Scheduling;**487,496,1015**;Aug 13, 1993;Build 21
  1. ;
  1. HDR ;Report Header
  1. ;
  1. N SDSTOP
  1. I SDPAGE>1,$E(IOST,1,2)="C-" D PAUSE^VALM1 I 'Y S SDSTOP=1 Q
  1. HDR1 W @IOF
  1. W !,?50,"Cancelled Clinic Report - Detail"
  1. W !,?50,"Date Range: ",$$FDATE^VALM1(SDBEG)_" to "_$$FDATE^VALM1(SDEND)
  1. D NOW^%DTC
  1. W !,?54,"Run Date: ",$E($$FDTTM^VALM1(%),1,14)
  1. W !,?62,"Page: ",SDPAGE S SDPAGE=SDPAGE+1
  1. W !,"Division"
  1. W !,SDASH,!
  1. W "Status",?8,"Patient",?30,"SSN",?39,"Appt Date",?61,"Clinic",?81,"Cancel Date",?106,"User",!
  1. W SDASH
  1. Q
  1. ;
  1. BLD ;Build output from ^TMP global
  1. ;
  1. N SDTOT,SDTOTT,SDCL,SDDATE,SDUSER,SDCDT
  1. D HDR
  1. I IOST["P-" K DIRUT
  1. S (SDSTOP,SDTOTT,SDFLG)=0,SDDV="" F S SDDV=$O(^TMP("SDAMCD",$J,SDDV)) Q:SDDV=""!(SDSTOP) D CHK D
  1. .S SDDVNM=$P($G(^DG(40.8,SDDV,0)),U) W !,SDDVNM
  1. .S SDCR="" F S SDCR=$O(^TMP("SDAMCD",$J,SDDV,SDCR)) Q:SDCR=""!($D(DIRUT)) S SDTOT(SDCR)=0 D W !!,"SUBTOTAL:",$J(SDTOT(SDCR),4),!
  1. ..S SDCL="" F S SDCL=$O(^TMP("SDAMCD",$J,SDDV,SDCR,SDCL)) Q:SDCL=""!($D(DIRUT)) D
  1. ...S SDDATE="" F S SDDATE=$O(^TMP("SDAMCD",$J,SDDV,SDCR,SDCL,SDDATE)) Q:SDDATE=""!($D(DIRUT)) D
  1. ....S SDDFN="" F S SDDFN=$O(^TMP("SDAMCD",$J,SDDV,SDCR,SDCL,SDDATE,SDDFN)) Q:SDDFN=""!($D(DIRUT)) D
  1. .....S SDDATA=$G(^TMP("SDAMCD",$J,SDDV,SDCR,SDCL,SDDATE,SDDFN))
  1. .....S Y=$P(SDDATA,";",2) D DD^%DT S SDAPDT=Y
  1. .....D GETS^DIQ(2,SDDFN_",",".01;.09",,"SDRES","SDMES") S SDNM=$E($G(SDRES(2,SDDFN_",",.01)),1,20),SDSSN=$E($G(SDRES(2,SDDFN_",",.09)),6,9)
  1. .....S Y=$P(SDDATA,U,14) D DD^%DT S SDCDT=Y S SDUSER=$P(SDDATA,U,12)
  1. .....S SDUSERNM=$$GET1^DIQ(200,SDUSER_",",.01,,"SDRES","SDMES")
  1. .....S SDCLNM=$$GET1^DIQ(44,SDCL_",",.01,,"SDRES","SDMES")
  1. .....W !,SDCR,?8,$E(SDNM,1,22),?30,SDSSN,?39,SDAPDT,?61,$E(SDCLNM,1,18),?81,SDCDT,?106,$E(SDUSERNM,1,26)
  1. .....K SDRES,SDMES ;SD/496
  1. .....D CHK I $D(DIRUT) Q
  1. .....S SDTOT(SDCR)=$G(SDTOT(SDCR))+1,SDTOTT=SDTOTT+1
  1. W !!,"TOTAL CANCELLATIONS:",$J(SDTOTT,14)
  1. W !!,"End of Report!"
  1. K SDUSERNM,SDSSN,SDAPDT,SDCLNM,SDRES,SDNM,SDCR,SDDDATE,SDDFN,SDDATA,SDDVNM,SDCLNM
  1. I IOST["P-" S DIRUT=1
  1. BLDQ Q
  1. ;
  1. MCTOT ;
  1. N SDFLG,SDDV,SDNXT
  1. S SDFLG=1,SDDV="" D HDR F S SDDV=$O(^TMP("SDAMS",$J,SDDV)) Q:SDDV="" D Q:SDSTOP
  1. .W !,$P($G(^DG(40.8,SDDV,0)),U)
  1. .K SDTOT,SDCNT D TOTAL
  1. .W ?124,$J(SDTOT,8)
  1. .D CHK Q:SDSTOP
  1. .S SDNXT=$O(^TMP("SDAMS",$J,SDDV)) W:SDNXT'="" !,SDASH
  1. .K SDTOT,SDCNT
  1. W !,SDTDASH,!,"TOTAL" F SDI=1:1:11 S SDCNT(SDI)=+$G(SDAT("SDAMS",$J,SDI)),SDTOT=$G(SDTOT)+$G(SDCNT(SDI))
  1. D CNT
  1. W ?124,$J(SDTOT,8) K SDTOT,SDCNT D CHK I SDSTOP G MCTOTQ
  1. W !! D LEGEND
  1. MCTOTQ Q
  1. CNT ;Place no-show/no-show auto rebook & cancel/cancel auto-rebook together
  1. S SDCNT(4)=+$G(SDCNT(4))+(+$G(SDCNT(6))),SDCNT(13)=+$G(SDCI(+SDCL,4))+(+$G(SDCI(+SDCL,6)))
  1. S SDCNT(5)=+$G(SDCNT(5))+(+$G(SDCNT(7))),SDCNT(14)=+$G(SDCI(+SDCL,5))+(+$G(SDCI(+SDCL,7)))
  1. F SDI=1,2,3,4,13,6,5,14,7,8 D
  1. .W ?$$COL(SDI),$J($S($D(SDCNT(SDI)):SDCNT(SDI),1:0),$$LEN(SDI))
  1. Q
  1. ;
  1. CHK ;Check to pause on screen
  1. N SDY
  1. I $E(IOST,1,2)="C-",($Y+8)>IOSL D PAUSE^VALM1 S SDY=Y D:SDY HDR1 I 'SDY S SDSTOP=1 Q
  1. I ($Y+8)>IOSL D HDR1
  1. Q
  1. TOTAL ;Totals
  1. F SDI=1:1:11 S SDCNT(SDI)=+$G(SDCL("SDAMS",$J,SDDV,SDI)),SDTOT=$G(SDTOT)+$G(SDCNT(SDI))
  1. D CNT
  1. K SDCNT
  1. Q
  1. ;
  1. LEGEND ;Legend on bottom of output
  1. ;
  1. W !,?5,"o CI=Checked In ; RB=Rebooked"
  1. W !,?5,"o 'Cancelled' appointments only reflect appointments cancelled using 'Cancel Clinic Availability'."
  1. W !,?5,"o 'Checked-In' does not include no-shows or cancelled appointments that have been checked in."
  1. Q
  1. ;
  1. COL(SDI) ;Column placement of appt. status
  1. ;
  1. ;input - SDI (appt. type)
  1. ;output - column placement
  1. Q $S(SDI=1:34,SDI=2:48,SDI=3:63,SDI=4:81,SDI=5:97,SDI=6:92,SDI=7:108,SDI=8:114,SDI=13:87,SDI=14:103)
  1. ;
  1. LEN(SDI) ;Length of column
  1. ;
  1. ;input - SDI (appt. type)
  1. ;output - length of column
  1. Q $S(SDI=1:10,SDI=2:11,SDI=3:15,SDI=4:5,SDI=6:4,SDI=5:5,SDI=7:4,SDI=8:9,SDI=13:4,SDI=14:4)
  1. ;