~derek-name/openvista-gtm-integration/replication-testing

« back to all changes in this revision

Viewing changes to mumps/ZTMGRSET.m

  • Committer: Jonathan Tai
  • Date: 2010-04-29 03:04:49 UTC
  • mfrom: (129.1.2 bug571450)
  • Revision ID: jon.tai@medsphere.com-20100429030449-aigd2yfd87hrxoox
Merge bug 571450 - Update ZTMGRSET

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
ZTMGRSET ;SF/RWF,PUG/TOAD,MSC/JDA/JDS/JKT - SET UP THE MGR ACCOUNT FOR THE SYSTEM ;21DEC2009
2
 
 ;;8.0;KERNEL;**34,36,69,94,121,127,136,191,275,MSC**;JUL 10, 1995;
3
 
 ;
4
 
 N %D,%S,I,OSMAX,U,X,X1,X2,Y,Z1,Z2,ZTOS,ZTMODE,SCR
5
 
 S ZTMODE=0
6
 
A W !!,"ZTMGRSET Version ",$P($T(+2),";",3)," ",$P($T(+2),";",5)
7
 
 W !,"HELLO! I exist to assist you in correctly initializing the current account."
8
 
 I $D(^%ZOSF("UCI")) X ^%ZOSF("UCI") I Y'["MG" W $C(7),!!,"THIS MAY NOT BE THE MANAGER UCI.",!," I think it is ",Y,". Should I continue anyway? N//" R X:120 G A:"YNyn"'[$E(X) Q:"Nn"[$E(X)
9
 
 S ZTOS=$$OS() I ZTOS'>0 W !,"Can't determine the OS type. Exiting ZTMGRSET." Q
10
 
 I ZTMODE D  I (PCNM<1)!(PCNM>999) W !,"Need a Patch number to load." Q
11
 
 . R !!,"Patch number to load: ",PCNM:120 Q:(PCNM<1)!(PCNM>999)
12
 
 . S SCR="I $P($T(+2^@X),"";"",5)?.E1P1"_$C(34)_PCNM_$C(34)_"1P.E"
13
 
 ;
14
 
 K ^%ZOSF("MASTER"),^("SIGNOFF") ;Remove old nodes.
15
 
DOIT W !!,"I will now rename a group of routines specific to your operating system."
16
 
 D @ZTOS,ALL,GLOBALS:'ZTMODE W !,"ALL DONE"
17
 
 Q
18
 
 ;
19
 
RELOAD ;Reload any patched routines
20
 
 N %D,%S,I,OSMAX,U,X,X1,X2,Y,Z1,Z2,ZTOS,ZTMODE,SCR
21
 
 S ZTMODE=1 G A
22
 
 Q
23
 
 ;
24
 
OS() ;Select the OS
25
 
 N Y,X1,X
26
 
 S U="^",SCR="I 1" F I=1:1:20 S X=$T(@I) Q:X=""  S OSMAX=I
27
 
B S Y=0,ZTOS=0 I $D(^%ZOSF("OS")) D
28
 
 . S X1=$P(^%ZOSF("OS"),U),ZTOS=$$OSNUM W !,"I think you are using ",X1
29
 
 W !,"Which MUMPS system should I install?",!
30
 
 F I=1:1:OSMAX W !,I," = ",$P($T(@I),";",3)
31
 
 W !,"System: " W:ZTOS ZTOS,"//"
32
 
 R X:300 S:X="" X=ZTOS
33
 
 I X<1!(X>OSMAX) W !,"NOT A VALID CHOICE" Q:X[U 0 G B
34
 
 Q X
35
 
 ;
36
 
OSNUM() ;Return the OS number
37
 
 N I,X1,X2,Y S Y=0,X1=$P($G(^%ZOSF("OS")),"^")
38
 
 F I=1:1 S X2=$T(@I) Q:X2=""  I X2[X1 S Y=I Q
39
 
 Q Y
40
 
 ;
41
 
ALL W !!,"Now to load routines common to all systems."
42
 
 D TM,ETRAP,DEV,OTHER,FM
43
 
 I ZTOS=7!(ZTOS=8) D
44
 
 . S ^%ZE="D ^ZE"
45
 
 E  D  ;With ZLoad, ZSave, ZInsert
46
 
 . W !,"Installing ^%Z editor"
47
 
 . D ^ZTEDIT
48
 
 I 'ZTMODE W !,"Setting ^%ZIS('C')" K ^%ZIS("C") S ^%ZIS("C")="G ^%ZISC"
49
 
 Q
50
 
 ;
51
 
TM ;Taskman
52
 
 S %S="ZTLOAD^ZTLOAD1^ZTLOAD2^ZTLOAD3^ZTLOAD4^ZTLOAD5^ZTLOAD6^ZTLOAD7"
53
 
 S %D="%ZTLOAD^%ZTLOAD1^%ZTLOAD2^%ZTLOAD3^%ZTLOAD4^%ZTLOAD5^%ZTLOAD6^%ZTLOAD7"
54
 
 D MOVE
55
 
 S %S="ZTM^ZTM0^ZTM1^ZTM2^ZTM3^ZTM4^ZTM5^ZTM6"
56
 
 S %D="%ZTM^%ZTM0^%ZTM1^%ZTM2^%ZTM3^%ZTM4^%ZTM5^%ZTM6"
57
 
 D MOVE
58
 
 S %S="ZTMS^ZTMS0^ZTMS1^ZTMS2^ZTMS3^ZTMS4^ZTMS5^ZTMS7^ZTMSH"
59
 
 ;I ZTOS=7!(ZTOS=8) S $P(%S,U,1)="ZTMSGTM"
60
 
 S %D="%ZTMS^%ZTMS0^%ZTMS1^%ZTMS2^%ZTMS3^%ZTMS4^%ZTMS5^%ZTMS7^%ZTMSH"
61
 
 D MOVE
62
 
 Q
63
 
FM ;Rename the FileMan routines
64
 
 I ZTMODE=1 Q  ;Only ask on full install
65
 
 R !,"Want to rename the FileMan routines: No//",X:600 Q:"Yy"'[$E(X_"N")
66
 
 S %S="DIDT^DIDTC^DIRCR",%D="%DT^%DTC^%RCR"
67
 
 D MOVE
68
 
 Q
69
 
 ;
70
 
ETRAP ;Error Trap
71
 
 S %S="ZTER^ZTER1",%D="%ZTER^%ZTER1"
72
 
 D MOVE
73
 
 Q
74
 
OTHER S %S="ZTPP^ZTP1^ZTPTCH^ZTRDEL^ZTMOVE"
75
 
 S %D="%ZTPP^%ZTP1^%ZTPTCH^%ZTRDEL^%ZTMOVE"
76
 
 D MOVE
77
 
 Q
78
 
DEV S %S="ZIS^ZIS1^ZIS2^ZIS3^ZIS5^ZIS6^ZIS7^ZISC^ZISP^ZISS^ZISS1^ZISS2^ZISTCP^ZISUTL"
79
 
 S %D="%ZIS^%ZIS1^%ZIS2^%ZIS3^%ZIS5^%ZIS6^%ZIS7^%ZISC^%ZISP^%ZISS^%ZISS1^%ZISS2^%ZISTCP^%ZISUTL"
80
 
 D MOVE
81
 
 Q
82
 
RUM ;Build the routines for Capacity Management (CM)
83
 
 S %S=""
84
 
 I ZTOS=1 S %S="ZOSVKRV^ZOSVKSVE^ZOSVKSVS^ZOSVKSD" ;DSM
85
 
 I ZTOS=2 S %S="ZOSVKRM^ZOSVKSME^ZOSVKSMS^ZOSVKSD" ;MSM
86
 
 I ZTOS=3 S %S="ZOSVKRO^ZOSVKSOE^ZOSVKSOS^ZOSVKSD" ;OpenM
87
 
 I ZTOS=7!(ZTOS=8) S %S="ZOSVKRG^ZOSVKSGE^ZOSVKSGS^ZOSVKSD" ;GT.M
88
 
 S %D="%ZOSVKR^%ZOSVKSE^%ZOSVKSS^%ZOSVKSD"
89
 
 D MOVE
90
 
 Q
91
 
ZOSF(X) ;
92
 
 X SCR I $T W ! D @(U_X) W !
93
 
 Q
94
 
1 ;;VAX DSM(V6), VAX DSM(V7)
95
 
 S %S="ZOSVVXD^ZTBKCVXD^ZIS4VXD^ZISFVXD^ZISHVXD^XUCIVXD^ZISETVXD"
96
 
 D DES,MOVE
97
 
 S %S="ZOSV2VXD^ZTMDCL",%D="%ZOSV2^%ZTMDCL"
98
 
 D MOVE,RUM,ZOSF("ZOSFVXD")
99
 
 Q
100
 
2 ;;MSM-PC/PLUS, MSM for NT or UNIX
101
 
 W !,"- Use autostart to do ZTMB don't resave as STUSER."
102
 
 S %S="ZOSVMSM^ZTBKCMSM^ZIS4MSM^ZISFMSM^ZISHMSM^XUCIMSM^ZISETMSM"
103
 
 D DES,MOVE
104
 
 S %S="ZOSV2MSM",%D="%ZOSV2"
105
 
 D MOVE,RUM,ZOSF("ZOSFMSM")
106
 
 I $$VERSION^%ZOSV(1)["UNIX" S %S="ZISHMSU",%D="%ZISH" D MOVE
107
 
 Q
108
 
3 ;;OpenM for NT, Cache/NT, Cache/VMS
109
 
 S %S="ZOSVONT^^ZIS4ONT^ZISFONT^ZISHONT^XUCIONT"
110
 
 D DES,MOVE
111
 
 S %S="ZISTCPS",%D="%ZISTCPS"
112
 
 D MOVE,RUM,ZOSF("ZOSFONT")
113
 
 Q
114
 
4 ;;Datatree, DTM-PC, DT-MAX
115
 
 S %S="ZOSVDTM^ZTBKCDTM^ZIS4DTM^ZISFDTM^ZISHDTM^XUCIDTM^ZISETDTM"
116
 
 D DES,MOVE
117
 
 S %S="ZOSV1DTM^ZTMB",%D="%ZOSV1^%ustart"
118
 
 D MOVE,ZOSF("ZOSFDTM")
119
 
 Q
120
 
5 ;;MVX,ISM VAX
121
 
 S %S="ZOSVMSQ^ZTBKCMSQ^ZIS4MSQ^ZISFMSQ^ZISHMSQ^XUCIMSQ^ZISETMSQ"
122
 
 D DES,MOVE
123
 
 S %S="ZTMB",%D="ZSTU"
124
 
 D MOVE,ZOSF("ZOSFMSQ")
125
 
 Q
126
 
6 ;;ISM (UNIX, Open VMS)
127
 
 S %S="ZOSVIS2^^ZIS4IS2^ZISFIS2^ZISHIS2^XUCIIS2^ZISETIS2"
128
 
 D DES,MOVE
129
 
 S %S="ZTMB",%D="ZSTU"
130
 
 D MOVE,ZOSF("ZOSFIS2")
131
 
 Q
132
 
7 ;;GT.M (VMS)
133
 
 S %S="ZOSVGTM^ZTBKCGTM^ZIS4GTM^ZISFGTM^ZISHGTM^XUCIGTM^ZISETGTM"
134
 
 D DES,MOVE
135
 
 S %S="ZOSV2GTM^ZISTCPS",%D="%ZOSV2^%ZISTCPS"
136
 
 D MOVE,ZOSF("ZOSFGTM")
137
 
 Q
138
 
8 ;;GT.M (Unix)
139
 
 S %S="ZOSVGUX^ZBBKCGUZ^ZIS4GTM^ZISFGTM^ZISHGUX^XUCIGTM^ZISETUP" ;ZISETGUX^ZTBKCGUX
140
 
 D DES,MOVE
141
 
 S %S="ZOSV2GTM^ZISTCPS^ZSSGUX",%D="%ZOSV2^%ZISTCPS^%SS"
142
 
 D MOVE,ZOSF("ZOSFGUX")
143
 
 D POSTGTM
144
 
 Q
145
 
10 ;;NOT SUPPORTED
146
 
 Q
147
 
MOVE ; rename % routines
148
 
 N %,X,Y
149
 
 F %=1:1:$L(%D,"^") D
150
 
 . S X=$P(%S,U,%) ; from
151
 
 . S Y=$P(%D,U,%) ; to
152
 
 . W !,"Routine: ",X
153
 
 . Q:X=""  Q:Y=""  I $T(^@X)=""  W ?20,"  Missing" Q
154
 
 . X SCR Q:'$T
155
 
 . W ?20,"  Loaded, "
156
 
 . D COPY(X,Y)
157
 
 . W ?20,"Saved as ",Y
158
 
 Q
159
 
 ;
160
 
COPY(FROM,TO) ;
161
 
 I ZTOS'=7,ZTOS'=8 X "ZL @FROM ZS @TO" Q
162
 
 ;For GT.M below
163
 
 S TO=$TR(TO,"%","_")
164
 
 N PATH,SRC,DST,COPY
165
 
 S PATH=$$R
166
 
 N %ZR D SILENT^%RSEL(FROM) S SRC=%ZR(FROM)_FROM_".m"
167
 
 S DST=PATH_TO_".m"
168
 
 S COPY=$S(ZTOS=7:"COPY",1:"cp")
169
 
 ZSYSTEM COPY_" "_SRC_" "_DST
170
 
 ZLINK TO
171
 
 Q
172
 
 ;
173
 
R() ; routine directory for GT.M
174
 
 I ZTOS=7 Q $P($ZRO,",")
175
 
 I ZTOS=8 Q $$RTNDIR^ZOSVGUX
176
 
 E  Q ""
177
 
 ;
178
 
DES S %D="%ZOSV^%ZTBKC1^%ZIS4^%ZISF^%ZISH^%XUCI^ZISETUP" Q
179
 
 ;
180
 
GLOBALS ;Set node zero of file #3.05 & #3.07
181
 
 W !!,"Now, I will check your % globals."
182
 
 W ".........."
183
 
 F %="^%ZIS","^%ZISL","^%ZTER","^%ZUA" S:'$D(@%) @%=""
184
 
 S:$D(^%ZTSK(0))[0 ^%ZTSK(-1)=100,^%ZTSCH=""
185
 
 S Z1=$G(^%ZTSK(-1),-1),Z2=$G(^%ZTSK(0))
186
 
 I Z1'=$P(Z2,"^",3) S:Z1'>0 ^%ZTSK(-1)=+Z2 S ^%ZTSK(0)="TASK'S^14.4^"_^%ZTSK(-1)
187
 
 S:$D(^%ZUA(3.05,0))[0 ^%ZUA(3.05,0)="FAILED ACCESS ATTEMPTS LOG^3.05^^"
188
 
 S:$D(^%ZUA(3.07,0))[0 ^%ZUA(3.07,0)="PROGRAMMER MODE LOG^3.07^^"
189
 
 Q
190
 
NAME ;Setup the static names for this system
191
 
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
192
 
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
193
 
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
194
 
 W ! Q
195
 
POSTGTM ;postinit for GTM
196
 
 S ZTOS=8
197
 
 F ROU="ZSTART","ZSTOP" D
198
 
 .S ZSTRT=$T(@(U_ROU))
199
 
 .I ZSTRT="" D BMES^XPDUTL("You do not currently have a "_ROU_" routine")
200
 
 .I ZSTRT'="" D BMES^XPDUTL(ZSTRT),BMES^XPDUTL("This is your current "_ROU)
201
 
 .D BMES^XPDUTL("Do you wish to save "_ROU_"GUX as "_ROU) S %=2 D YN^DICN
202
 
 .I %=1 D COPY(ROU_"GUX",ROU)
 
1
ZTMGRSET        ;SF/RWF,PUG/TOAD,MSC/JDA/JDS/JKT - SET UP THE MGR ACCOUNT FOR THE SYSTEM ;23APR2010
 
2
        ;;8.0;KERNEL;**34,36,69,94,121,127,136,191,275,MSC,MSC9466**;JUL 10, 1995;
 
3
        ;
 
4
        N %D,%S,I,OSMAX,U,X,X1,X2,Y,Z1,Z2,ZTOS,ZTMODE,SCR
 
5
        S ZTMODE=0
 
6
A       W !!,"ZTMGRSET Version ",$P($T(+2),";",3)," ",$P($T(+2),";",5)
 
7
        W !,"HELLO! I exist to assist you in correctly initializing the current account."
 
8
        I $D(^%ZOSF("UCI")) X ^%ZOSF("UCI") I Y'["MG" W $C(7),!!,"THIS MAY NOT BE THE MANAGER UCI.",!," I think it is ",Y,". Should I continue anyway? N//" R X:120 G A:"YNyn"'[$E(X) Q:"Nn"[$E(X)
 
9
        S ZTOS=$$OS() I ZTOS'>0 W !,"Can't determine the OS type. Exiting ZTMGRSET." Q
 
10
        I ZTMODE D  I (PCNM<1)!(PCNM>999) W !,"Need a Patch number to load." Q
 
11
        . R !!,"Patch number to load: ",PCNM:120 Q:(PCNM<1)!(PCNM>999)
 
12
        . S SCR="I $P($T(+2^@X),"";"",5)?.E1P1"_$C(34)_PCNM_$C(34)_"1P.E"
 
13
        ;
 
14
        K ^%ZOSF("MASTER"),^("SIGNOFF") ;Remove old nodes.
 
15
DOIT    W !!,"I will now rename a group of routines specific to your operating system."
 
16
        D @ZTOS,ALL,GLOBALS:'ZTMODE W !,"ALL DONE"
 
17
        Q
 
18
        ;
 
19
RELOAD  ;Reload any patched routines
 
20
        N %D,%S,I,OSMAX,U,X,X1,X2,Y,Z1,Z2,ZTOS,ZTMODE,SCR
 
21
        S ZTMODE=1 G A
 
22
        Q
 
23
        ;
 
24
OS()    ;Select the OS
 
25
        N Y,X1,X
 
26
        S U="^",SCR="I 1" F I=1:1:20 S X=$T(@I) Q:X=""  S OSMAX=I
 
27
B       S Y=0,ZTOS=0 I $D(^%ZOSF("OS")) D
 
28
        . S X1=$P(^%ZOSF("OS"),U),ZTOS=$$OSNUM W !,"I think you are using ",X1
 
29
        W !,"Which MUMPS system should I install?",!
 
30
        F I=1:1:OSMAX W !,I," = ",$P($T(@I),";",3)
 
31
        W !,"System: " W:ZTOS ZTOS,"//"
 
32
        R X:300 S:X="" X=ZTOS
 
33
        I X<1!(X>OSMAX) W !,"NOT A VALID CHOICE" Q:X[U 0 G B
 
34
        Q X
 
35
        ;
 
36
OSNUM() ;Return the OS number
 
37
        N I,X1,X2,Y S Y=0,X1=$P($G(^%ZOSF("OS")),"^")
 
38
        F I=1:1 S X2=$T(@I) Q:X2=""  I X2[X1 S Y=I Q
 
39
        Q Y
 
40
        ;
 
41
ALL     W !!,"Now to load routines common to all systems."
 
42
        D TM,ETRAP,DEV,OTHER,FM
 
43
        I ZTOS=7!(ZTOS=8) D
 
44
        . S ^%ZE="D ^ZE"
 
45
        E  D  ;With ZLoad, ZSave, ZInsert
 
46
        . W !,"Installing ^%Z editor"
 
47
        . D ^ZTEDIT
 
48
        I 'ZTMODE W !,"Setting ^%ZIS('C')" K ^%ZIS("C") S ^%ZIS("C")="G ^%ZISC"
 
49
        Q
 
50
        ;
 
51
TM      ;Taskman
 
52
        S %S="ZTLOAD^ZTLOAD1^ZTLOAD2^ZTLOAD3^ZTLOAD4^ZTLOAD5^ZTLOAD6^ZTLOAD7"
 
53
        S %D="%ZTLOAD^%ZTLOAD1^%ZTLOAD2^%ZTLOAD3^%ZTLOAD4^%ZTLOAD5^%ZTLOAD6^%ZTLOAD7"
 
54
        D MOVE
 
55
        S %S="ZTM^ZTM0^ZTM1^ZTM2^ZTM3^ZTM4^ZTM5^ZTM6"
 
56
        S %D="%ZTM^%ZTM0^%ZTM1^%ZTM2^%ZTM3^%ZTM4^%ZTM5^%ZTM6"
 
57
        D MOVE
 
58
        S %S="ZTMS^ZTMS0^ZTMS1^ZTMS2^ZTMS3^ZTMS4^ZTMS5^ZTMS7^ZTMSH"
 
59
        ;I ZTOS=7!(ZTOS=8) S $P(%S,U,1)="ZTMSGTM"
 
60
        S %D="%ZTMS^%ZTMS0^%ZTMS1^%ZTMS2^%ZTMS3^%ZTMS4^%ZTMS5^%ZTMS7^%ZTMSH"
 
61
        D MOVE
 
62
        Q
 
63
FM      ;Rename the FileMan routines
 
64
        I ZTMODE=1 Q  ;Only ask on full install
 
65
        R !,"Want to rename the FileMan routines: No//",X:600 Q:"Yy"'[$E(X_"N")
 
66
        S %S="DIDT^DIDTC^DIRCR",%D="%DT^%DTC^%RCR"
 
67
        D MOVE
 
68
        Q
 
69
        ;
 
70
ETRAP   ;Error Trap
 
71
        S %S="ZTER^ZTER1",%D="%ZTER^%ZTER1"
 
72
        D MOVE
 
73
        Q
 
74
OTHER   S %S="ZTPP^ZTP1^ZTPTCH^ZTRDEL^ZTMOVE"
 
75
        S %D="%ZTPP^%ZTP1^%ZTPTCH^%ZTRDEL^%ZTMOVE"
 
76
        D MOVE
 
77
        Q
 
78
DEV     S %S="ZIS^ZIS1^ZIS2^ZIS3^ZIS5^ZIS6^ZIS7^ZISC^ZISP^ZISS^ZISS1^ZISS2^ZISTCP^ZISUTL"
 
79
        S %D="%ZIS^%ZIS1^%ZIS2^%ZIS3^%ZIS5^%ZIS6^%ZIS7^%ZISC^%ZISP^%ZISS^%ZISS1^%ZISS2^%ZISTCP^%ZISUTL"
 
80
        D MOVE
 
81
        Q
 
82
RUM     ;Build the routines for Capacity Management (CM)
 
83
        S %S=""
 
84
        I ZTOS=1 S %S="ZOSVKRV^ZOSVKSVE^ZOSVKSVS^ZOSVKSD" ;DSM
 
85
        I ZTOS=2 S %S="ZOSVKRM^ZOSVKSME^ZOSVKSMS^ZOSVKSD" ;MSM
 
86
        I ZTOS=3 S %S="ZOSVKRO^ZOSVKSOE^ZOSVKSOS^ZOSVKSD" ;OpenM
 
87
        I ZTOS=7!(ZTOS=8) S %S="ZOSVKRG^ZOSVKSGE^ZOSVKSGS^ZOSVKSD" ;GT.M
 
88
        S %D="%ZOSVKR^%ZOSVKSE^%ZOSVKSS^%ZOSVKSD"
 
89
        D MOVE
 
90
        Q
 
91
ZOSF(X) ;
 
92
        X SCR I $T W ! D @(U_X) W !
 
93
        Q
 
94
1       ;;VAX DSM(V6), VAX DSM(V7)
 
95
        S %S="ZOSVVXD^ZTBKCVXD^ZIS4VXD^ZISFVXD^ZISHVXD^XUCIVXD^ZISETVXD"
 
96
        D DES,MOVE
 
97
        S %S="ZOSV2VXD^ZTMDCL",%D="%ZOSV2^%ZTMDCL"
 
98
        D MOVE,RUM,ZOSF("ZOSFVXD")
 
99
        Q
 
100
2       ;;MSM-PC/PLUS, MSM for NT or UNIX
 
101
        W !,"- Use autostart to do ZTMB don't resave as STUSER."
 
102
        S %S="ZOSVMSM^ZTBKCMSM^ZIS4MSM^ZISFMSM^ZISHMSM^XUCIMSM^ZISETMSM"
 
103
        D DES,MOVE
 
104
        S %S="ZOSV2MSM",%D="%ZOSV2"
 
105
        D MOVE,RUM,ZOSF("ZOSFMSM")
 
106
        I $$VERSION^%ZOSV(1)["UNIX" S %S="ZISHMSU",%D="%ZISH" D MOVE
 
107
        Q
 
108
3       ;;OpenM for NT, Cache/NT, Cache/VMS
 
109
        S %S="ZOSVONT^^ZIS4ONT^ZISFONT^ZISHONT^XUCIONT"
 
110
        D DES,MOVE
 
111
        S %S="ZISTCPS",%D="%ZISTCPS"
 
112
        D MOVE,RUM,ZOSF("ZOSFONT")
 
113
        Q
 
114
4       ;;Datatree, DTM-PC, DT-MAX
 
115
        S %S="ZOSVDTM^ZTBKCDTM^ZIS4DTM^ZISFDTM^ZISHDTM^XUCIDTM^ZISETDTM"
 
116
        D DES,MOVE
 
117
        S %S="ZOSV1DTM^ZTMB",%D="%ZOSV1^%ustart"
 
118
        D MOVE,ZOSF("ZOSFDTM")
 
119
        Q
 
120
5       ;;MVX,ISM VAX
 
121
        S %S="ZOSVMSQ^ZTBKCMSQ^ZIS4MSQ^ZISFMSQ^ZISHMSQ^XUCIMSQ^ZISETMSQ"
 
122
        D DES,MOVE
 
123
        S %S="ZTMB",%D="ZSTU"
 
124
        D MOVE,ZOSF("ZOSFMSQ")
 
125
        Q
 
126
6       ;;ISM (UNIX, Open VMS)
 
127
        S %S="ZOSVIS2^^ZIS4IS2^ZISFIS2^ZISHIS2^XUCIIS2^ZISETIS2"
 
128
        D DES,MOVE
 
129
        S %S="ZTMB",%D="ZSTU"
 
130
        D MOVE,ZOSF("ZOSFIS2")
 
131
        Q
 
132
7       ;;GT.M (VMS)
 
133
        S %S="ZOSVGTM^ZTBKCGTM^ZIS4GTM^ZISFGTM^ZISHGTM^XUCIGTM^ZISETGTM"
 
134
        D DES,MOVE
 
135
        S %S="ZOSV2GTM^ZISTCPS",%D="%ZOSV2^%ZISTCPS"
 
136
        D MOVE,ZOSF("ZOSFGTM")
 
137
        Q
 
138
8       ;;GT.M (Unix)
 
139
        S %S="ZOSVGUX^ZBBKCGUZ^ZIS4GTM^ZISFGTM^ZISHGUX^XUCIGTM^ZISETUP" ;ZISETGUX^ZTBKCGUX
 
140
        D DES,MOVE
 
141
        S %S="ZOSV2GTM^ZISTCPS^ZSSGUX",%D="%ZOSV2^%ZISTCPS^%SS"
 
142
        D MOVE,ZOSF("ZOSFGUX")
 
143
        D POSTGTM
 
144
        Q
 
145
10      ;;NOT SUPPORTED
 
146
        Q
 
147
MOVE    ; rename % routines
 
148
        N %,X,Y
 
149
        F %=1:1:$L(%D,"^") D
 
150
        . S X=$P(%S,U,%) ; from
 
151
        . S Y=$P(%D,U,%) ; to
 
152
        . W !,"Routine: ",X
 
153
        . Q:X=""  Q:Y=""  I $T(^@X)=""  W ?20,"  Missing" Q
 
154
        . X SCR Q:'$T
 
155
        . W ?20,"  Loaded, "
 
156
        . D COPY(X,Y)
 
157
        . W ?20,"Saved as ",Y
 
158
        Q
 
159
        ;
 
160
COPY(FROM,TO)   ;
 
161
        I ZTOS'=7,ZTOS'=8 D  Q
 
162
        .N SAME,%,T S SAME=1
 
163
        .F %=1:1 S T=$T(+%^@FROM) Q:T=""  I $T(+%^@TO)'=T S SAME=0 Q  ;FIND IF ROUTINE IS ON FILE IN EXACTLY THIS FORM!!
 
164
        .I $T(+%^@TO)]"" S SAME=0
 
165
        .I 'SAME X "ZL @FROM ZS @TO"
 
166
        ;For GT.M below
 
167
        S TO=$TR(TO,"%","_")
 
168
        N PATH,SRC,DST,COPY
 
169
        S PATH=$$R
 
170
        N %ZR D SILENT^%RSEL(FROM) S SRC=%ZR(FROM)_FROM_".m"
 
171
        S DST=PATH_TO_".m"
 
172
        S COPY=$S(ZTOS=7:"COPY",1:"cp")
 
173
        ZSYSTEM COPY_" "_SRC_" "_DST
 
174
        ZLINK TO
 
175
        Q
 
176
        ;
 
177
R()     ; routine directory for GT.M
 
178
        I ZTOS=7 Q $P($ZRO,",")
 
179
        I ZTOS=8 Q $$RTNDIR^ZOSVGUX
 
180
        E  Q ""
 
181
        ;
 
182
DES     S %D="%ZOSV^%ZTBKC1^%ZIS4^%ZISF^%ZISH^%XUCI^ZISETUP" Q
 
183
        ;
 
184
GLOBALS ;Set node zero of file #3.05 & #3.07
 
185
        W !!,"Now, I will check your % globals."
 
186
        W ".........."
 
187
        F %="^%ZIS","^%ZISL","^%ZTER","^%ZUA" S:'$D(@%) @%=""
 
188
        S:$D(^%ZTSK(0))[0 ^%ZTSK(-1)=100,^%ZTSCH=""
 
189
        S Z1=$G(^%ZTSK(-1),-1),Z2=$G(^%ZTSK(0))
 
190
        I Z1'=$P(Z2,"^",3) S:Z1'>0 ^%ZTSK(-1)=+Z2 S ^%ZTSK(0)="TASK'S^14.4^"_^%ZTSK(-1)
 
191
        S:$D(^%ZUA(3.05,0))[0 ^%ZUA(3.05,0)="FAILED ACCESS ATTEMPTS LOG^3.05^^"
 
192
        S:$D(^%ZUA(3.07,0))[0 ^%ZUA(3.07,0)="PROGRAMMER MODE LOG^3.07^^"
 
193
        Q
 
194
NAME    ;Setup the static names for this system
 
195
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
 
196
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
 
197
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
 
198
        W ! Q
 
199
POSTGTM ;postinit for GTM
 
200
        S ZTOS=8
 
201
        F ROU="ZSTART","ZSTOP" D
 
202
        .S ZSTRT=$T(@(U_ROU))
 
203
        .I ZSTRT="" D BMES^XPDUTL("You do not currently have a "_ROU_" routine")
 
204
        .I ZSTRT'="" D BMES^XPDUTL(ZSTRT),BMES^XPDUTL("This is your current "_ROU)
 
205
        .D BMES^XPDUTL("Do you wish to save "_ROU_"GUX as "_ROU) S %=2 D YN^DICN
 
206
        .I %=1 D COPY(ROU_"GUX",ROU)