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

BSDALS.m

Go to the documentation of this file.
  1. BSDALS ; IHS/ANMC/LJF - SHORT APPT LIST - LT CODE ;
  1. ;;5.3;PIMS;**1005**;MAY 28, 2004
  1. ;IHS/OIT/LJF 02/02/2006 PATCH 1005 screened out cancelled appointments
  1. ;
  1. EN(SC,BSDATE) ;EP; -- main entry point for appt list list template
  1. NEW VALMCNT D TERM^VALM0,CLEAR^VALM1
  1. D EN^VALM("BSDAM APPT LIST SHORT")
  1. D CLEAR^VALM1
  1. Q
  1. ;
  1. HDR ;EP; -- header code
  1. S VALMHDR(1)=$$REPEAT^XLFSTR(" ",12)_$$CONF^BDGF
  1. NEW X S X=$$SP(15)_"Other Appts Already Scheduled for "
  1. S VALMHDR(2)=X_$$FMTE^XLFDT(BSDATE,5)
  1. Q
  1. ;
  1. INIT ;EP; -- init variables and list array
  1. K ^TMP("BSDALS",$J) S VALMCNT=0
  1. NEW APDT,PAT,NODE,END,LINE
  1. S END=BSDATE+.2400,APDT=BSDATE-.0001
  1. F S APDT=$O(^SC(SC,"S",APDT)) Q:'APDT!(APDT>END) D
  1. . S PAT=0 F S PAT=$O(^SC(SC,"S",APDT,1,PAT)) Q:'PAT D
  1. .. S NODE=$G(^SC(SC,"S",APDT,1,PAT,0)) Q:NODE=""
  1. .. Q:$P(NODE,U,9)="C" ;cancelled ;IHS/OIT/LJF 02/03/2006 PATCH 1005
  1. .. S LINE=" "_$P($$FMTE^XLFDT(APDT),"@",2) ;appt time
  1. .. S LINE=$$PAD(LINE,10)_$P(NODE,U,2)_" min" ;appt length
  1. .. S LINE=$$PAD(LINE,20)_$E($P(NODE,U,4),1,59) ;appt comments
  1. .. I $$WALKIN^BSDU2(+NODE,APDT) S LINE=$$PAD(LINE,20)_"Walk-in"
  1. .. S VALMCNT=VALMCNT+1
  1. .. S ^TMP("BSDALS",$J,VALMCNT,0)=LINE
  1. I VALMCNT=0 S ^TMP("BSDALS",$J,1,0)="No Appointments Scheduled",VALMCNT=1
  1. Q
  1. ;
  1. HELP ;EP; -- help code
  1. S X="?" D DISP^XQORM1 W !!
  1. Q
  1. ;
  1. EXIT ;EP; -- exit code
  1. K ^TMP("BSDALS",$J)
  1. S VALMNOFF=1 ;suppress form feed before next question
  1. Q
  1. ;
  1. EXPND ;EP; -- expand code
  1. Q
  1. ;
  1. PAUSE ; -- end of action pause
  1. D PAUSE^BDGF Q
  1. ;
  1. RESET ; -- update partition for return to list manager
  1. I $D(VALMQUIT) S VALMBCK="Q" Q
  1. D TERM^VALM0 S VALMBCK="R"
  1. D INIT,HDR Q
  1. ;
  1. RESET2 ; -- update partition without recreating display array
  1. I $D(VALMQUIT) S VALMBCK="Q" Q
  1. D TERM^VALM0 S VALMBCK="R" D HDR Q
  1. ;
  1. PAD(D,L) ; -- SUBRTN to pad length of data
  1. ; -- D=data L=length
  1. Q $E(D_$$REPEAT^XLFSTR(" ",L),1,L)
  1. ;
  1. SP(N) ; -- SUBRTN to pad N number of spaces
  1. Q $$PAD(" ",N)