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

DPTDZKEY.m

Go to the documentation of this file.
  1. DPTDZKEY ; IHS/ANMC/LJF - LIST MERGE USERS ; [ 03/16/2000 6:50 AM ]
  1. ;
  1. EN ;EP -- main entry point for DPTD USER LIST
  1. S VALMCC=1
  1. D EN^VALM("DPTD IHS MERGE USERS")
  1. D CLEAR^VALM1,FULL^VALM1,EXIT
  1. Q
  1. ;
  1. HDR ;EP -- header code
  1. NEW X S X=$$SPACE(20)
  1. S VALMHDR(1)=" "
  1. S VALMHDR(2)=X_IORVON_"ACCESS TO PATIENT MERGE SYSTEM"_IORVOFF
  1. S VALMCC=1
  1. Q
  1. ;
  1. INIT ;EP -- init variables and list array
  1. D GATHER
  1. S VALMCNT=DPTDLN
  1. S VALMSG="- Previous Screen Q Quit ?? for More Actions"
  1. Q
  1. ;
  1. HELP ;EP -- help code
  1. S X="?" D DISP^XQORM1,MSG^DPTDUT("",2,0,0)
  1. Q
  1. ;
  1. EXIT ;EP -- exit code
  1. K ^TMP("DPTDZKEY",$J),^TMP("DPTDZKEY1",$J) K DPTDLN
  1. D TERM^VALM0 S VALMBCK="R"
  1. D CLEAR^VALM1
  1. Q
  1. ;
  1. EXPND ;EP -- expand code
  1. Q
  1. ;
  1. PAUSE ;EP -- end of action pause
  1. D PAUSE^DPTDZFIX Q
  1. ;
  1. RESET ;EP -- 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
  1. Q
  1. ;
  1. GATHER ; -- find all users with ob keys
  1. NEW DPTDNUM,KEYNM,KEY,KEYDES,LINE,USR,DPTD,SRV,IEN
  1. K ^TMP("DPTDZKEY",$J),^TMP("DPTDZKEY1",$J)
  1. S DPTDLN=0
  1. S KEYNM="XDQZ"
  1. F S KEYNM=$O(^DIC(19.1,"B",KEYNM)) Q:KEYNM'["XDR" D
  1. . S KEY=$O(^DIC(19.1,"B",KEYNM,0)) Q:KEY=""
  1. . S KEYDES=$$VAL^XBDIQ1(19.1,KEY,.02)
  1. . S LINE=$$SPACE(5)_"Access to "_KEYDES
  1. . S ^TMP("DPTDZKEY1",$J,KEYNM,0)=LINE
  1. . S USR=0
  1. . F S USR=$O(^XUSEC(KEYNM,USR)) Q:USR="" D
  1. .. ;Q:$D(^XUSEC("XUPROG",USR))
  1. .. K DPTD
  1. .. D ENP^XBDIQ1(200,USR,".01;8;29","DPTD(","I")
  1. .. S SRV=$S(DPTD(29)="":"??",1:$$VAL^XBDIQ1(49,DPTD(29,"I"),1))
  1. .. S LINE=" "_$$PAD(DPTD(.01),20)_$$SPACE(3)_$$PAD(SRV,10)
  1. .. S LINE=$$PAD(LINE,34)_$$PAD(DPTD(8),25)
  1. .. S ^TMP("DPTDZKEY1",$J,KEYNM,DPTD(.01),USR)=LINE
  1. ;
  1. S KEYNM=0
  1. F S KEYNM=$O(^TMP("DPTDZKEY1",$J,KEYNM)) Q:KEYNM="" D
  1. . D SET(""),SET(^TMP("DPTDZKEY1",$J,KEYNM,0)),SET("")
  1. . S USR=0
  1. . F S USR=$O(^TMP("DPTDZKEY1",$J,KEYNM,USR)) Q:USR="" D
  1. .. S IEN=0
  1. .. F S IEN=$O(^TMP("DPTDZKEY1",$J,KEYNM,USR,IEN)) Q:IEN="" D
  1. ... D SET(^TMP("DPTDZKEY1",$J,KEYNM,USR,IEN))
  1. Q
  1. ;
  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. SPACE(N) ; -- SUBRTN to pad N number of spaces
  1. Q $$PAD(" ",N)
  1. ;
  1. SET(LINE) ; -- SUBRTN to set data line into ^tmp
  1. S DPTDLN=DPTDLN+1
  1. S ^TMP("DPTDZKEY",$J,DPTDLN,0)=LINE
  1. S ^TMP("DPTDZKEY",$J,"IDX",DPTDLN,DPTDLN)=""
  1. Q