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

BDGCEN32.m

Go to the documentation of this file.
  1. BDGCEN32 ; IHS/ANMC/LJF - CENSUS WARD LIST-SUMMARY ;
  1. ;;5.3;PIMS;;APR 26, 2002
  1. ;
  1. ;
  1. NEW LINE,DGWN,DGWD,UNDER
  1. S UNDER=$$REPEAT^XLFSTR("_",6) ;underline of 6 spaces
  1. ;
  1. S LINE="<<< SUMMARY PAGE >>>"
  1. D SET($$SP(75-$L(LINE)\2)_$G(IORVON)_LINE_$G(IORVOFF),.VALMCNT)
  1. S LINE=$$PAD("Ward",16)_"Beg Census Admits Net Transfers Discharges Ending Census"
  1. D SET($$REPEAT^XLFSTR("=",80),.VALMCNT)
  1. D SET(LINE,.VALMCNT)
  1. D SET($$REPEAT^XLFSTR("-",80),.VALMCNT)
  1. ;
  1. ; loop through active wards by name
  1. S DGWN=0
  1. F S DGWN=$O(^DIC(42,"B",DGWN)) Q:DGWN="" D
  1. . S DGWD=0 F S DGWD=$O(^DIC(42,"B",DGWN,DGWD)) Q:'DGWD D
  1. .. I '$D(^BDGWD(DGWD)) Q ;deleted ward
  1. .. I $$GET1^DIQ(9009016.5,DGWD,.03)="INACTIVE" Q ;inactive
  1. .. ;
  1. .. ; for each ward, list changes
  1. .. S LINE=$$PAD(DGWN,16)_UNDER_" +"
  1. .. S LINE=$$PAD(LINE,30)_(+$G(BDGSUB(DGWN,"A"))) ;admits
  1. .. S LINE=$$PAD(LINE,42)_(+$G(BDGSUB(DGWN,"T"))) ;net transfers
  1. .. S LINE=$$PAD($$PAD(LINE,49)_"-",55)_(+$G(BDGSUB(DGWN,"D"))) ;dsch
  1. .. S LINE=$$PAD(LINE,65)_UNDER
  1. .. D SET(LINE,.VALMCNT),SET("",.VALMCNT)
  1. .. ;
  1. .. ; increment totals for whole facility
  1. .. S BDGTOT("A")=$G(BDGTOT("A"))+$G(BDGSUB(DGWN,"A"))
  1. .. S BDGTOT("T")=$G(BDGTOT("T"))+$G(BDGSUB(DGWN,"T"))
  1. .. S BDGTOT("D")=$G(BDGTOT("D"))+$G(BDGSUB(DGWN,"D"))
  1. ;
  1. D SET($$REPEAT^XLFSTR("=",80),.VALMCNT)
  1. S LINE=$$PAD("TOTALS:",16)_UNDER_" +"
  1. S LINE=$$PAD(LINE,30)_(+$G(BDGTOT("A")))
  1. S LINE=$$PAD(LINE,42)_(+$G(BDGTOT("T")))
  1. S LINE=$$PAD($$PAD(LINE,49)_"-",55)_(+$G(BDGTOT("D")))
  1. S LINE=$$PAD(LINE,63)_"= "_UNDER
  1. D SET(LINE,.VALMCNT)
  1. ;
  1. S LINE=$$PAD("NEWBORNS:",16)_UNDER_" +"
  1. S LINE=$$PAD(LINE,30)_(+$G(BDGNB("A")))
  1. S LINE=$$PAD(LINE,42)_(+$G(BDGNB("T")))
  1. S LINE=$$PAD($$PAD(LINE,49)_"-",55)_(+$G(BDGNB("D")))
  1. S LINE=$$PAD(LINE,63)_"+ "_UNDER
  1. D SET(LINE,.VALMCNT)
  1. ;
  1. K BDGTOT,BDGSUB,BDGNB
  1. Q
  1. ;
  1. SET(DATA,NUM) ; put display data into array
  1. S NUM=NUM+1
  1. S ^TMP("BDGCEN3",$J,NUM,0)=DATA
  1. Q
  1. ;
  1. PAD(D,L) ;EP -- 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)