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

BSDWLE1.m

Go to the documentation of this file.
  1. BSDWLE1 ; IHS/OIT/LJF - WAITING LIST DATA ENTRY - CLOSED CASES
  1. ;;5.3;PIMS;**1004**;MAY 28, 2004
  1. ;IHS/OIT/LJF 07/21/2005 PATCH 1004 routine added
  1. ;
  1. EN ; -- main entry point for BSDRM WAITING LIST CLOSED
  1. NEW VALMCNT D TERM^VALM0,CLEAR^VALM1
  1. NEW BSDCLOSE S BSDCLOSE=1
  1. D EN^VALM("BSDAM WAITING LIST CLOSED")
  1. D CLEAR^VALM1
  1. Q
  1. ;
  1. HDR ;EP -- header code
  1. NEW X
  1. S VALMHDR(1)=$$SP(15)_$$CONF^BDGF
  1. S X=$$GET1^DIQ(9009017.1,BSDWLN,.01)
  1. S VALMHDR(2)=$$SP(80-$L(X)\2)_X
  1. Q
  1. ;
  1. INIT ;EP -- init variables and list array
  1. NEW FILE,IEN,IENS,BSDATA,NAME,BSDCNT,LINE
  1. S VALMCNT=0 K ^TMP("BSDWLE",$J),^TMP("BSDWLE1",$J)
  1. ;
  1. S FILE=9009017.11
  1. S IEN=0 F S IEN=$O(^BSDWL(BSDWLN,1,IEN)) Q:'IEN D
  1. . S IENS=IEN_","_BSDWLN_","
  1. . K BSDATA D GETS^DIQ(FILE,IENS,".01;.07","R","BSDATA")
  1. . I BSDATA(FILE,IENS,"DATE REMOVED FROM LIST")="" Q ;skip if NOT closed out
  1. . S ^TMP("BSDWLE1",$J,BSDATA(FILE,IENS,"PATIENT"),IEN)="" ;sort by patient name
  1. ;
  1. ; now take sorted list and build display array
  1. S NAME=0 F S NAME=$O(^TMP("BSDWLE1",$J,NAME)) Q:NAME="" D
  1. . S IEN=0 F S IEN=$O(^TMP("BSDWLE1",$J,NAME,IEN)) Q:'IEN D
  1. . . S IENS=IEN_","_BSDWLN_"," K BSDATA
  1. . . D GETS^DIQ(FILE,IENS,".013;.02;.03;.07;.08;1","R","BSDATA")
  1. . . S BSDCNT=$G(BSDCNT)+1 S LINE=$J(BSDCNT,3)_". "
  1. . . S LINE=LINE_$$PAD($E(NAME,1,22),24)_BSDATA(FILE,IENS,"HRCN")
  1. . . S LINE=$$PAD(LINE,37)_BSDATA(FILE,IENS,"DATE ADDED TO LIST")
  1. . . S LINE=$$PAD(LINE,52)_BSDATA(FILE,IENS,"DATE REMOVED FROM LIST")
  1. . . S LINE=$$PAD(LINE,67)_BSDATA(FILE,IENS,"PRIORITY")
  1. . . S LINE=$$PAD(LINE,81)_$E(BSDATA(FILE,IENS,"RESOLUTION"),1,18)
  1. . . S LINE=$$PAD(LINE,102)_$G(BSDATA(FILE,IENS,"COMMENTS",1))
  1. . . D SET(LINE,IEN,BSDCNT,.VALMCNT)
  1. ;
  1. I VALMCNT=0 S ^TMP("BSDWLE",$J,1,0)="No Closed Cases for this Waiting List",VALMCNT=1
  1. K ^TMP("BSDWLE1",$J)
  1. Q
  1. ;
  1. SET(DATA,IEN,COUNT,LINENUM) ; puts data line into display array
  1. S LINENUM=LINENUM+1 S:COUNT=0 COUNT=1
  1. S ^TMP("BSDWLE",$J,LINENUM,0)=DATA
  1. S ^TMP("BSDWLE",$J,"IDX",LINENUM,COUNT)=IEN
  1. Q
  1. ;
  1. HELP ; -- help code
  1. S X="?" D DISP^XQORM1 W !!
  1. Q
  1. ;
  1. EXIT ; -- exit code
  1. K ^TMP("BSDWLE",$J)
  1. Q
  1. ;
  1. EXPND ; -- expand code
  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)