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

ZTMGRSET.m

Go to the documentation of this file.
  1. ZTMGRSET ;SF/RWF,PUG/TOAD - SET UP THE MGR ACCOUNT FOR THE SYSTEM ;02/13/2008
  1. ;;8.0;KERNEL;**34,36,69,94,121,127,136,191,275,355,446,584**;JUL 10, 1995;Build 6
  1. ;Per VHA Directive 2004-038, this routine should not be modified
  1. ;
  1. N %D,%S,I,OSMAX,U,X,X1,X2,Y,Z1,Z2,ZTOS,ZTMODE,SCR
  1. S ZTMODE=0
  1. A W !!,"ZTMGRSET Version ",$P($T(+2),";",3)," Patch level ",$P($T(+2),";",5)
  1. W !,"HELLO! I exist to assist you in correctly initializing the current account."
  1. I $D(^%ZOSF("UCI")) X ^%ZOSF("UCI") D G A:"YNyn"'[$E(X) Q:"Nn"[$E(X)
  1. . I ZTMODE=2 S X="Y" Q
  1. . W $C(7),!!,"This is namespace or uci ",Y,".",!
  1. . R "Should I continue? N//",X:120
  1. . Q
  1. S ZTOS=$$OS() I ZTOS'>0 W !,"OS type not selected. Exiting ZTMGRSET." Q
  1. I ZTMODE D I (PCNM<1)!(PCNM>999) W !,"Need a Patch number to load." Q
  1. . I ZTMODE<2 R !!,"Patch number to load: ",PCNM:120 Q:(PCNM<1)!(PCNM>999)
  1. . S SCR="I $P($T(+2^@X),"";"",5)?.E1P1"_$C(34)_PCNM_$C(34)_"1P.E"
  1. ;
  1. K ^%ZOSF("MASTER"),^("SIGNOFF") ;Remove old nodes.
  1. ;
  1. DOIT D MES("I will now rename a group of routines specific to your operating system.",1)
  1. D @ZTOS,ALL,GLOBALS:'ZTMODE D MES("ALL DONE",1)
  1. Q
  1. ;========================================
  1. RELOAD ;Reload any patched routines
  1. N %D,%S,I,OSMAX,U,X,X1,X2,Y,Z1,Z2,ZTOS,ZTMODE,SCR
  1. S ZTMODE=1 G A
  1. Q
  1. ;
  1. PATCH(PCNM) ;Post install Reload any patched routines
  1. N %D,%S,I,OSMAX,U,X,X1,X2,Y,Z1,Z2,ZTOS,ZTMODE,SCR
  1. I (1>PCNM)!(PCNM>999) D MES("PATCH NUMBER OUT OF RANGE",1) Q
  1. D MES("Rename the routines in Patch "_PCNM,1)
  1. S ZTMODE=2 G A
  1. Q
  1. ;
  1. MES(T,B) ;Write message.
  1. S B=$G(B)
  1. I $L($T(BMES^XPDUTL)) D BMES^XPDUTL(T):B,MES^XPDUTL(T):'B Q
  1. W:B ! W !,T
  1. Q
  1. ;
  1. OS() ;Select the OS
  1. N Y,X1,X,OSMAX
  1. S U="^",SCR="I 1" F I=1:1:20 S X=$T(@I) Q:X="" S OSMAX=I
  1. B S Y=0,ZTOS=0 I $D(^%ZOSF("OS")) D
  1. . S X1=$P(^%ZOSF("OS"),U),ZTOS=$$OSNUM W !,"I think you are using ",X1
  1. I ZTMODE=2,ZTOS>0 Q ZTOS
  1. W !,"Which MUMPS system should I install?",!
  1. F I=1:1:OSMAX W !,I," = ",$P($T(@I),";",3)
  1. W !,"System: " W:ZTOS ZTOS,"//"
  1. R X:300 S:X="" X=ZTOS
  1. I $S(X<1!(X>OSMAX):1,1:$P($T(@X),";",3)="") W !,"NOT A VALID CHOICE" Q:X[U 0 G B
  1. Q X
  1. ;
  1. OSNUM() ;Return the OS number
  1. N I,X1,X2,Y S Y=0,X1=$P($G(^%ZOSF("OS")),"^")
  1. F I=1:1 S X2=$T(@I) Q:X2="" I X2[X1 S Y=I Q
  1. Q Y
  1. ;
  1. ALL W !!,"Now to load routines common to all systems."
  1. D TM,ETRAP,DEV,OTHER,FM
  1. I ZTOS=7!(ZTOS=8) D
  1. . S ^%ZE="D ^ZE"
  1. E D ;With ZLoad, ZSave, ZInsert
  1. . W !,"Installing ^%Z editor"
  1. . D ^ZTEDIT
  1. I 'ZTMODE W !,"Setting ^%ZIS('C')" K ^%ZIS("C") S ^%ZIS("C")="G ^%ZISC"
  1. Q
  1. ;
  1. TM ;Taskman
  1. S %S="ZTLOAD^ZTLOAD1^ZTLOAD2^ZTLOAD3^ZTLOAD4^ZTLOAD5^ZTLOAD6^ZTLOAD7"
  1. S %D="%ZTLOAD^%ZTLOAD1^%ZTLOAD2^%ZTLOAD3^%ZTLOAD4^%ZTLOAD5^%ZTLOAD6^%ZTLOAD7"
  1. D MOVE
  1. S %S="ZTM^ZTM0^ZTM1^ZTM2^ZTM3^ZTM4^ZTM5^ZTM6"
  1. S %D="%ZTM^%ZTM0^%ZTM1^%ZTM2^%ZTM3^%ZTM4^%ZTM5^%ZTM6"
  1. D MOVE
  1. S %S="ZTMS^ZTMS0^ZTMS1^ZTMS2^ZTMS3^ZTMS4^ZTMS5^ZTMS7^ZTMSH"
  1. S %D="%ZTMS^%ZTMS0^%ZTMS1^%ZTMS2^%ZTMS3^%ZTMS4^%ZTMS5^%ZTMS7^%ZTMSH"
  1. D MOVE
  1. Q
  1. FM ;Rename the FileMan routines
  1. I ZTMODE>0 Q ;Only ask on full install
  1. R !,"Want to rename the FileMan routines: No//",X:600 Q:"Yy"'[$E(X_"N")
  1. S %S="DIDT^DIDTC^DIRCR",%D="%DT^%DTC^%RCR"
  1. D MOVE
  1. Q
  1. ;
  1. ETRAP ;Error Trap
  1. S %S="ZTER^ZTER1",%D="%ZTER^%ZTER1"
  1. D MOVE
  1. Q
  1. OTHER S %S="ZTPP^ZTP1^ZTPTCH^ZTRDEL^ZTMOVE^ZTBKC"
  1. S %D="%ZTPP^%ZTP1^%ZTPTCH^%ZTRDEL^%ZTMOVE^%ZTBKC"
  1. D MOVE
  1. Q
  1. DEV S %S="ZIS^ZIS1^ZIS2^ZIS3^ZIS5^ZIS6^ZIS7^ZISC^ZISP^ZISS^ZISS1^ZISS2^ZISTCP^ZISUTL"
  1. S %D="%ZIS^%ZIS1^%ZIS2^%ZIS3^%ZIS5^%ZIS6^%ZIS7^%ZISC^%ZISP^%ZISS^%ZISS1^%ZISS2^%ZISTCP^%ZISUTL"
  1. D MOVE
  1. Q
  1. RUM ;Build the routines for Capacity Management (CM)
  1. S %S=""
  1. I ZTOS=1 S %S="ZOSVKRV^ZOSVKSVE^ZOSVKSVS^ZOSVKSD" ;DSM
  1. I ZTOS=2 S %S="ZOSVKRM^ZOSVKSME^ZOSVKSMS^ZOSVKSD" ;MSM
  1. I ZTOS=3 S %S="ZOSVKRO^ZOSVKSOE^ZOSVKSOS^ZOSVKSD" ;OpenM
  1. I ZTOS=7!(ZTOS=8) S %S="ZOSVKRG^ZOSVKSGE^ZOSVKSGS^ZOSVKSD" ;GT.M
  1. S %D="%ZOSVKR^%ZOSVKSE^%ZOSVKSS^%ZOSVKSD"
  1. D MOVE
  1. Q
  1. ZOSF(X) ;
  1. X SCR I $T W ! D @(U_X) W !
  1. Q
  1. 1 ;;VAX DSM(V6), VAX DSM(V7)
  1. S %S="ZOSVVXD^ZTBKCVXD^ZIS4VXD^ZISFVXD^ZISHVXD^XUCIVXD"
  1. D DES,MOVE
  1. S %S="ZOSV2VXD^ZTMDCL",%D="%ZOSV2^%ZTMDCL"
  1. D MOVE,RUM,ZOSF("ZOSFVXD")
  1. Q
  1. 2 ;;MSM-PC/PLUS, MSM for NT or UNIX
  1. W !,"- Use autostart to do ZTMB don't resave as STUSER."
  1. S %S="ZOSVMSM^ZTBKCMSM^ZIS4MSM^ZISFMSM^ZISHMSM^XUCIMSM"
  1. D DES,MOVE
  1. S %S="ZOSV2MSM",%D="%ZOSV2"
  1. D MOVE,RUM,ZOSF("ZOSFMSM")
  1. I $$VERSION^%ZOSV(1)["UNIX" S %S="ZISHMSU",%D="%ZISH" D MOVE
  1. Q
  1. 3 ;;Cache (VMS, NT, Linux), OpenM-NT
  1. S %S="ZOSVONT^ZTBKCONT^ZIS4ONT^ZISFONT^ZISHONT^XUCIONT"
  1. D DES,MOVE
  1. S %S="ZISTCPS^ZTMDCL",%D="%ZISTCPS^%ZTMDCL"
  1. D MOVE,RUM,ZOSF("ZOSFONT")
  1. Q
  1. 4 ;;
  1. 5 ;;
  1. 6 ;;
  1. 7 ;;GT.M (VMS)
  1. S %ZE=".M" D init^%RSEL
  1. S %S="ZOSVGTM^^ZIS4GTM^ZISFGTM^ZISHGTM^XUCIGTM"
  1. D DES,MOVE
  1. S %S="ZOSV2GTM^ZISTCPS^ZTMDCL",%D="%ZOSV2^%ZISTCPS^ZTMDCL"
  1. D MOVE,ZOSF("ZOSFGTM")
  1. Q
  1. 8 ;;GT.M (Unix)
  1. S %ZE=".m" D init^%RSEL
  1. S %S="ZOSVGUX^^ZIS4GTM^ZISFGTM^ZISHGTM^XUCIGTM"
  1. D DES,MOVE
  1. S %S="ZOSV2GTM^ZISTCPS",%D="%ZOSV2^%ZISTCPS"
  1. D MOVE,ZOSF("ZOSFGUX")
  1. Q
  1. 10 ;;NOT SUPPORTED
  1. Q
  1. MOVE ; rename % routines
  1. N %,X,Y,M
  1. F %=1:1:$L(%D,"^") D D MES(M)
  1. . S M="",X=$P(%S,U,%) ; from
  1. . S Y=$P(%D,U,%) ; to
  1. . Q:X=""
  1. . S M="Routine: "_$J(X,8)
  1. . Q:Y="" I $T(^@X)="" S M=M_" Missing" Q
  1. . X SCR Q:'$T
  1. . S M=M_" Loaded, "
  1. . D COPY(X,Y)
  1. . S M=M_"Saved as "_$J(Y,8)
  1. Q
  1. ;
  1. COPY(FROM,TO) ;
  1. I ZTOS'=7,ZTOS'=8 X "ZL @FROM ZS @TO" Q
  1. ;For GT.M below
  1. N PATH,COPY,CMD S PATH=$$R
  1. S FROM=PATH_FROM_".m"
  1. S TO=PATH_$TR(TO,"%","_")_".m"
  1. S COPY=$S(ZTOS=7:"COPY",1:"cp")
  1. S CMD=COPY_" "_FROM_" "_TO
  1. X "ZSYSTEM CMD"
  1. Q
  1. ;
  1. R() ; routine directory for GT.M
  1. N ZRO X "S ZRO=$ZRO"
  1. I ZTOS=7 D Q $S(ZRO["(":$P($P(ZRO,"(",2),")"),1:ZRO)
  1. . S ZRO=$P(ZRO,",")
  1. . I ZRO["/SRC=" S ZRO=$P(ZRO,"=",2) Q ;Source dir
  1. . S ZRO=$S(ZRO["/":$P(ZRO,"/"),1:ZRO) Q ;Source and Obj in same dir
  1. I ZTOS=8 Q $P($S(ZRO["(":$P($P(ZRO,"(",2),")"),1:ZRO)," ")_"/" ;Use first source dir.
  1. E Q ""
  1. ;
  1. DES S %D="%ZOSV^%ZTBKC1^%ZIS4^%ZISF^%ZISH^%XUCI" Q
  1. ;
  1. GLOBALS ;Set node zero of file #3.05 & #3.07
  1. W !!,"Now, I will check your % globals."
  1. W ".........."
  1. F %="^%ZIS","^%ZISL","^%ZTER","^%ZUA" S:'$D(@%) @%=""
  1. S:$D(^%ZTSK(0))[0 ^%ZTSK(-1)=100,^%ZTSCH=""
  1. S Z1=$G(^%ZTSK(-1),-1),Z2=$G(^%ZTSK(0))
  1. I Z1'=$P(Z2,"^",3) S:Z1'>0 ^%ZTSK(-1)=+Z2 S ^%ZTSK(0)="TASKS^14.4^"_^%ZTSK(-1)
  1. S:$D(^%ZUA(3.05,0))[0 ^%ZUA(3.05,0)="FAILED ACCESS ATTEMPTS LOG^3.05^^"
  1. S:$D(^%ZUA(3.07,0))[0 ^%ZUA(3.07,0)="PROGRAMMER MODE LOG^3.07^^"
  1. Q
  1. NAME ;Setup the static names for this system
  1. MGR W !,"NAME OF MANAGER'S UCI,VOLUME SET: "_^%ZOSF("MGR")_"// " R X:$S($G(DTIME):DTIME,1:9999) I X]"" X ^("UCICHECK") G MGR:0[Y S ^%ZOSF("MGR")=X
  1. PROD W !,"PRODUCTION (SIGN-ON) UCI,VOLUME SET: "_^%ZOSF("PROD")_"// " R X:$S($G(DTIME):DTIME,1:9999) I X]"" X ^("UCICHECK") G PROD:0[Y S ^%ZOSF("PROD")=X
  1. VOL W !,"NAME OF VOLUME SET: "_^%ZOSF("VOL")_"//" R X:$S($G(DTIME):DTIME,1:9999) I X]"" S:X?3U ^%ZOSF("VOL")=X I X'?3U W "MUST BE 3 Upper case." G VOL
  1. W ! Q