Merge lp:~jontai/openvista-gtm-integration/bug392194 into lp:openvista-gtm-integration
- bug392194
- Merge into mainline
Proposed by
Jon Tai
Status: | Merged |
---|---|
Merged at revision: | not available |
Proposed branch: | lp:~jontai/openvista-gtm-integration/bug392194 |
Merge into: | lp:openvista-gtm-integration |
Diff against target: | None lines |
To merge this branch: | bzr merge lp:~jontai/openvista-gtm-integration/bug392194 |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
jeff.apple | Approve | ||
Review via email: mp+7962@code.launchpad.net |
Commit message
Description of the change
To post a comment you must log in.
Revision history for this message
jeff.apple (jeff-apple) : | # |
review:
Approve
Preview Diff
[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1 | === modified file 'mumps/MSCZJOB.m' |
2 | --- mumps/MSCZJOB.m 2009-05-21 00:50:25 +0000 |
3 | +++ mumps/MSCZJOB.m 2009-06-26 21:06:41 +0000 |
4 | @@ -1,4 +1,4 @@ |
5 | -MSCZJOB ;GFT,JDS/MSC;1 MAY 2009 |
6 | +MSCZJOB ;GFT,JDS/MSC;26JUN2009 |
7 | ;;8.0;KERNEL;**MSC** |
8 | W !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! |
9 | N MSC |
10 | @@ -7,9 +7,10 @@ |
11 | D ^DDS Q |
12 | ; |
13 | UNLOCK(D0) ;FROM FIELD 2, PAGE 3: UNLOCK THE LOCK |
14 | - N X,R S R=$G(@MSC@(MSCJOBID,"L",D0)) I R'["^" Q ;CAN'T SEE IT |
15 | + N X,R,N S R=$G(@MSC@(MSCJOBID,"L",D0)) I R'["^" Q ;CAN'T SEE IT |
16 | S R=$P(R," ",2),X="L "_R D ^DIM Q:'$D(X) |
17 | - D UNLOCK^MSCZJOBU(R) |
18 | + S N=$$NSP(MSCJOBD0) |
19 | + D UNLOCK^MSCZJOBU(R,N) |
20 | Q |
21 | ; |
22 | KILL(J) ;FROM FIELD |
23 | @@ -18,7 +19,8 @@ |
24 | ; |
25 | COMPMUL ;COMPUTED MULTIPLE FOR MSCZJOBEXAM BLOCK |
26 | N X,D0,J |
27 | - S MSC="^TMP(""MSCZJOB"")" D POLL |
28 | + S MSC="^TMP(""MSCZJOB1"",$J)" D POLL |
29 | + D JOBEXAM^MSCZJOBU(MSC) |
30 | F D0=0:0 S D0=$O(MSCZJOB(D0)) Q:'D0 D |
31 | .S MSCZJOB(D0)=MSCZJOB(D0)_U_$$DEV(D0)_U_$$USER(D0)_U_$$NSP(D0)_U_U_U_U_U_$$ROUTINE(D0) |
32 | .S X=MSCZJOB(D0) X DICMX |
33 | @@ -29,7 +31,7 @@ |
34 | .N L,P S N=$$FIND(D0,"I","$ZGBLDIR"),L=$L(N,"/") I L<2 Q |
35 | .F L=L-1:-1:2 S P=$P(N,"/",L) I P'[".",P'["globals" Q |
36 | .S P=1 I $P(N,"/")="" S P=2 |
37 | - .S N=$P(N,"/",P,L) |
38 | + .S N=$P(N,"/",L) |
39 | USER(D0) Q $P($G(^VA(200,+$$FIND(D0,"V","DUZ"),0)),U) |
40 | ROUTINE(D0) Q $$FIND(D0,"V","%ZPOS") |
41 | ; |
42 | @@ -38,7 +40,8 @@ |
43 | Q X |
44 | ; |
45 | COMPSTK ;COMPUTED MULTIPLE FOR MSCZJOBSTACK BLOCK |
46 | - S MSC="^TMP(""MSCZJOB"")" K @MSC@(MSCJOBID) D POLL1 |
47 | + S MSC="^TMP(""MSCZJOB1"",$J)" K @MSC@(MSCJOBID) D POLL1 |
48 | + D JOBEXAM^MSCZJOBU(MSC,MSCJOBID) |
49 | N D0,J S J=MSCJOBID |
50 | F D0=1:1:$O(@MSC@(J,"S",""),-1) S X="" X DICMX |
51 | Q |
52 | @@ -47,13 +50,15 @@ |
53 | Q X |
54 | ; |
55 | COMPVARS ;COMPUTED MULTIPLE FOR MSCZJOBVARS BLOCK |
56 | - S MSC="^TMP(""MSCZJOB"")" K @MSC@(MSCJOBID) D POLL1 |
57 | + S MSC="^TMP(""MSCZJOB1"",$J)" K @MSC@(MSCJOBID) D POLL1 |
58 | + D JOBEXAM^MSCZJOBU(MSC,MSCJOBID) |
59 | N D0,J S J=MSCJOBID |
60 | F D0=1:1:$O(@MSC@(J,"V",""),-1) S X="" X DICMX |
61 | Q |
62 | ; |
63 | COMPLKS ;COMPUTED MULTIPLE FOR MSCZJOBLOCKS BLOCK |
64 | - S MSC="^TMP(""MSCZJOB"")" D POLL1 |
65 | + S MSC="^TMP(""MSCZJOB1"",$J)" D POLL1 |
66 | + D JOBEXAM^MSCZJOBU(MSC,MSCJOBID) |
67 | N D0 |
68 | F D0=1:1:$$LOCKS S X="" X DICMX |
69 | Q |
70 | @@ -81,9 +86,9 @@ |
71 | TEST Q |
72 | COMPLK ;COMPUTED MULTIPLE FOR MSCZLOCK BLOCK |
73 | N X,D0,J |
74 | - S MSC="^TMP(""MSCZJOB"")" D POLL S D0=0 |
75 | + S MSC="^TMP(""MSCZJOB1"",$J)" K @MSC D POLL,JOBEXAM^MSCZJOBU(MSC) S D0=0 |
76 | F K=0:0 S K=$O(MSCZJOB(K)) Q:'K D |
77 | - .F J=0:0 S J=$O(^TMP("MSCZJOB",MSCZJOB(K),"L",J)) Q:'J S A=$TR(^(J),U,"~") D |
78 | + .F J=0:0 S J=$O(^TMP("MSCZJOB1",$J,MSCZJOB(K),"L",J)) Q:'J S A=$TR(^(J),U,"~") D |
79 | ..S D0=D0+1,MSCZLK(D0)=$P(A,"LOCK ",2,9)_U_$$USER(K)_U_$TR($$ROUTINE(K),U,"~")_"^^"_MSCZJOB(K) |
80 | ..S X=MSCZLK(D0) X DICMX |
81 | Q |
82 | @@ -91,6 +96,7 @@ |
83 | S DDSFILE=3.081,DR="[MSCZLOCK]",DDSPARM="S" |
84 | D ^DDS Q |
85 | UNL(D0) ;FROM FIELD 2, PAGE 3: UNLOCK THE LOCK |
86 | - N X,R S R=$P($G(MSCZLK(D0)),U),P=$P($G(MSCZLK(D0)),U,5) ;I R'["^" Q ;CAN'T SEE IT |
87 | + N X,R,N S R=$P($G(MSCZLK(D0)),U),P=$P($G(MSCZLK(D0)),U,5) ;I R'["^" Q ;CAN'T SEE IT |
88 | S R=$P(R,"~",2),R="^"_$S(R'["(":$P(R," "),1:$P(R,")")_")"),X="L "_R D ^DIM Q:'$D(X) ;GOOD SYNTAX? |
89 | - D UNLOCK^MSCZJOBU(R) |
90 | + S N=$$NSP(D0) |
91 | + D UNLOCK^MSCZJOBU(R,N) |
92 | |
93 | === modified file 'mumps/MSCZJOBS.m' |
94 | --- mumps/MSCZJOBS.m 2009-06-01 18:46:25 +0000 |
95 | +++ mumps/MSCZJOBS.m 2009-06-26 17:39:51 +0000 |
96 | @@ -1,4 +1,4 @@ |
97 | -MSCZJOBS ;JKT/MSC - OpenVista System status ;27MAY2009 |
98 | +MSCZJOBS ;JKT/MSC - OpenVista System status ;26JUN2009 |
99 | ;;8.0;KERNEL;**MSC** |
100 | ; |
101 | ALL D SS() Q |
102 | @@ -13,19 +13,22 @@ |
103 | D INTRPT^MSCZJOBU("*") H .5 |
104 | ; |
105 | N DATETIME S DATETIME=$$HTE^XLFDT($H) |
106 | - W #!,?22,"OpenVista System Status" |
107 | - W !,?(34-($L(DATETIME)/2)\1),DATETIME |
108 | - W !!,?1,"Process",?12,"Device",?30,"Instance",?42,"Routine",?56,"User" |
109 | + W #!,?28,"OpenVista System Status" |
110 | + W !,?(40-($L(DATETIME)/2)\1),DATETIME |
111 | + W !!,?1,"Process",?12,"Device",?30,"Instance",?42,"Routine",?56,"User",?70,"Identity" |
112 | ; |
113 | + N MSC S MSC="^TMP(""MSCZJOB1"",$J)" K @MSC |
114 | + D JOBEXAM^MSCZJOBU(MSC) |
115 | N PID S PID="" |
116 | - D PIDS^MSCZJOBU(.PID) |
117 | - F S PID=$O(PID(PID)) Q:PID="" D |
118 | + F S PID=$O(@MSC@(PID)) Q:PID="" D |
119 | . I $G(THIS) Q:$$INSTANCE(PID)'=$$CURRENT^ZCD() |
120 | . W !,$$PID(PID) |
121 | . W ?12,$$DEVICE(PID) |
122 | . W ?30,$$INSTANCE(PID) |
123 | . W ?42,$$ROUTINE(PID) |
124 | . W ?56,$$USER(PID) |
125 | + . W ?70,$$IDENT(PID) |
126 | + K @MSC |
127 | ; |
128 | W !! ZSY "uptime" |
129 | Q |
130 | @@ -34,22 +37,24 @@ |
131 | Q $J(PID,8)_$S($J=PID:"*",1:"") |
132 | ; |
133 | DEVICE(PID) ;Return device |
134 | - Q $$FIND("^TMP(""MSCZJOB"")",PID,"I","$PRINCIPAL") |
135 | + Q $$FIND(PID,"I","$PRINCIPAL") |
136 | ; |
137 | INSTANCE(PID) ;Return name of OpenVista instance |
138 | - N ZG S ZG=$$FIND("^TMP(""MSCZJOB"")",PID,"I","$ZGBLDIR") |
139 | + N ZG S ZG=$$FIND(PID,"I","$ZGBLDIR") |
140 | Q $P(ZG,"/",$L(ZG,"/")-2) |
141 | ; |
142 | ROUTINE(PID) ;Return routine |
143 | - Q $P($$FIND("^TMP(""MSCZJOB"")",PID,"V","%ZPOS"),"^",2) |
144 | - ; |
145 | -USER(PID) ;Return OpenVista user |
146 | - N DUZ S DUZ=+$$FIND("^TMP(""MSCZJOB"")",PID,"V","DUZ") |
147 | - ; FIXME: this code is looking up the name of the person in *this* |
148 | - ; instance, which assumes that ^VA(200) is the same across databases |
149 | - Q $P($G(^VA(200,DUZ,0)),"^") |
150 | - ; |
151 | -FIND(NODE,PID,ARR,KEY) ;Return the value of a key in one of the ZSHOW arrays |
152 | + Q $P($$FIND(PID,"V","%ZPOS"),"^",2) |
153 | + ; |
154 | +USER(PID) ;Return Linux user |
155 | + Q $$OWNER^MSCZJOBU(PID) |
156 | + ; |
157 | +IDENT(PID) ;Return OpenVista user |
158 | + N DUZ S DUZ=+$$FIND(PID,"V","DUZ") |
159 | + N ZG S ZG=$$FIND(PID,"I","$ZGBLDIR") |
160 | + Q $P($G(^|ZG|VA(200,DUZ,0)),"^") |
161 | + ; |
162 | +FIND(PID,ARR,KEY) ;Return the value of a key in one of the ZSHOW arrays |
163 | N I,X S I="",X="" |
164 | - F S I=$O(@NODE@(PID,ARR,I)) Q:'I I $P(^(I),KEY_"=")="" S X=$TR($P(^(I),"=",2),"""") Q |
165 | + F S I=$O(@MSC@(PID,ARR,I)) Q:'I I $P(@MSC@(PID,ARR,I),KEY_"=")="" S X=$TR($P(@MSC@(PID,ARR,I),"=",2),"""") Q |
166 | Q X |
167 | |
168 | === modified file 'mumps/MSCZJOBU.m' |
169 | --- mumps/MSCZJOBU.m 2009-05-21 01:38:37 +0000 |
170 | +++ mumps/MSCZJOBU.m 2009-06-26 21:06:41 +0000 |
171 | @@ -1,4 +1,4 @@ |
172 | -MSCZJOBU ;RHL,JDS,JKT/MSC;20MAY2009 |
173 | +MSCZJOBU ;RHL,JDS,JKT/MSC;26JUN2009 |
174 | ;;8.0;KERNEL;**MSC** |
175 | ; |
176 | ; JOB EXAM UTILITIES FOR GT.M |
177 | @@ -10,7 +10,7 @@ |
178 | ; |
179 | N DEV |
180 | S DEV="psdev" |
181 | - OPEN DEV:(COMM="ps -o pid= -C mumps")::"PIPE" U DEV |
182 | + OPEN DEV:(COMM="ps -o pid= -C mumps":READONLY)::"PIPE" U DEV |
183 | ; |
184 | N %I S %I=$I |
185 | N %J ; $JOB |
186 | @@ -21,6 +21,39 @@ |
187 | C DEV |
188 | Q |
189 | ; |
190 | +JOBEXAM(XARY,ONEPID) ; GET ARRAY OF JOB EXAM DATA FOR ALL MUMPS PROCESSES |
191 | + ; XARY PASSED BY REFERENCE |
192 | + ; |
193 | + ; get a list of all OpenVista instances and look up their $ZG values |
194 | + N Y D LIST^ZCD |
195 | + N INSTANCE S INSTANCE="" |
196 | + F S INSTANCE=$O(Y("B",INSTANCE)) Q:INSTANCE="" D |
197 | + . N %ZG,%ZRO D NEWZGZRO^ZCD(INSTANCE) |
198 | + . S Y("B",INSTANCE)=%ZG |
199 | + ; |
200 | + I $G(ONEPID) D GETJOB(ONEPID) Q |
201 | + ; for each mumps process, search each OpenVista instance for the latest job exam data |
202 | + D PIDS(.XARY) |
203 | + N PID S PID="" |
204 | + F S PID=$O(XARY(PID)) Q:PID="" D GETJOB(PID) |
205 | + Q |
206 | +GETJOB(PID) ; |
207 | + N SORTDATE |
208 | + F S INSTANCE=$O(Y("B",INSTANCE)) Q:INSTANCE="" D |
209 | + . N H S H=$G(^|Y("B",INSTANCE)|TMP("MSCZJOB",PID,0)) Q:H="" |
210 | + . S SORTDATE($$SEC^XLFDT(H))=INSTANCE |
211 | + N MAXDATE S MAXDATE=$O(SORTDATE(""),-1) Q:MAXDATE="" |
212 | + M @XARY@(PID)=^|Y("B",SORTDATE(MAXDATE))|TMP("MSCZJOB",PID) |
213 | + Q |
214 | + ; |
215 | +OWNER(PID) ; get owner of process with PID |
216 | + N DEV |
217 | + S DEV="psdev" |
218 | + OPEN DEV:(COMM="ps -o user= -p "_PID:READONLY)::"PIPE" U DEV |
219 | + N UID R UID |
220 | + C DEV |
221 | + Q UID |
222 | + ; |
223 | INTRPT(PID) ; SEND mupip intrpt to process with PID |
224 | ; WHICH CAUSES THE $ZINTERRUPT CODE TO BE EXECUTED. |
225 | ; PID PASSED BY VALUE |
226 | @@ -32,7 +65,7 @@ |
227 | N CMD,DEV |
228 | S CMD="gtmsignal -q "_$S(PID="*":"-a",1:PID) |
229 | S DEV="gtmsignaldev" |
230 | - OPEN DEV:(COMM=CMD)::"PIPE" U DEV C DEV |
231 | + OPEN DEV:(COMM=CMD:READONLY)::"PIPE" U DEV C DEV |
232 | Q |
233 | ; |
234 | KILL(PID) ; Send mupip stop to process with PID |
235 | @@ -43,12 +76,15 @@ |
236 | ; |
237 | N DEV |
238 | S DEV="gtmsignaldev" |
239 | - OPEN DEV:(COMM="gtmsignal -q -s "_PID)::"PIPE" U DEV C DEV |
240 | + OPEN DEV:(COMM="gtmsignal -q -s "_PID:READONLY)::"PIPE" U DEV C DEV |
241 | Q |
242 | ; |
243 | -UNLOCK(NODE) ; Use lke to remove lock on NODE. |
244 | +UNLOCK(NODE,INSTANCE) ; Use lke to remove lock on NODE. |
245 | + N %ZG,%ZRO |
246 | + D:$G(INSTANCE)'="" NEWZGZRO^ZCD(INSTANCE) |
247 | N CMD,DEV |
248 | S CMD="lke clear -lock="""_NODE_""" -nointeractive -output=/dev/null" |
249 | + S:$G(%ZG)'="" CMD="gtmgbldir="""_%ZG_""" "_CMD |
250 | S DEV="lkedev" |
251 | - OPEN DEV:(COMM=CMD)::"PIPE" U DEV C DEV |
252 | + OPEN DEV:(SHELL="/bin/sh":COMM=CMD:READONLY)::"PIPE" U DEV C DEV |
253 | Q |
254 | |
255 | === modified file 'mumps/ZCD.m' |
256 | --- mumps/ZCD.m 2009-06-25 00:16:23 +0000 |
257 | +++ mumps/ZCD.m 2009-06-25 23:15:27 +0000 |
258 | @@ -1,4 +1,4 @@ |
259 | -ZCD ; MSC/JKT,JDS ; "Namespace" utilities for GT.M/Unix ; 24JUN2009 |
260 | +ZCD ; MSC/JKT,JDS ; "Namespace" utilities for GT.M/Unix ; 25JUN2009 |
261 | ;;8.0;KERNEL;**MSC**;April 21 2009 |
262 | ; This routine assumes that your global directory file exists one |
263 | ; directory below the root of the instance, e.g., |
264 | @@ -57,15 +57,7 @@ |
265 | Q |
266 | ; |
267 | SWITCH(INSTANCE) ; switch to another OpenVista instance |
268 | - ; |
269 | - ; don't allow switching if GT.M versions aren't the same |
270 | - Q:$$GTMPATH($$CURRENT())'=$$GTMPATH(INSTANCE) 0 |
271 | - ; |
272 | - ; there are several ways to determine new values of $ZG and $ZRO |
273 | - ; try each method until one succeeds |
274 | - N %ZG,%ZRO,%METHOD S %ZG="",%ZRO="" |
275 | - F %METHOD="ENV","CAT","REP" Q:$$@("SWITCH"_%METHOD)(INSTANCE) |
276 | - I %ZG="",%ZRO="" Q 0 |
277 | + N %ZG,%ZRO D NEWZGZRO(INSTANCE) I %ZG="",%ZRO="" Q 0 |
278 | ; |
279 | ; FIXME: set gtm_dist="$root/$instance/gtm" |
280 | N %TEMPDIR S %TEMPDIR=$$MKTEMP() S $ZG=%ZG,$ZRO=%ZRO_" "_%TEMPDIR |
281 | @@ -99,26 +91,39 @@ |
282 | Q:'$Q |
283 | Q 1 |
284 | ; |
285 | -SWITCHENV(INSTANCE) ; private entry point to be used by $$SWITCH only |
286 | +NEWZGZRO(INSTANCE) ; determine new values of $ZG and $ZRO |
287 | + S %ZG="",%ZRO="" |
288 | + ; |
289 | + ; don't allow switching if GT.M versions aren't the same |
290 | + Q:$$GTMPATH($$CURRENT())'=$$GTMPATH(INSTANCE) |
291 | + ; |
292 | + ; there are several ways to determine new values of $ZG and $ZRO |
293 | + ; try each method until one succeeds |
294 | + N %METHOD F %METHOD="ENV","CAT","REP" D @("SWITCH"_%METHOD)(INSTANCE) Q:%ZG'=""&(%ZRO'="") |
295 | + Q |
296 | + ; |
297 | +SWITCHENV(INSTANCE) ; private entry point |
298 | ; set new $ZG and $ZRO by parsing env file in target instance |
299 | ; |
300 | ; FIXME: implement this |
301 | - Q 0 |
302 | + Q |
303 | ; |
304 | -SWITCHCAT(INSTANCE) ; private entry point to be used by $$SWITCH only |
305 | - ; set new $ZG and $ZRO by concatenating conventional names to $$ROOT |
306 | +SWITCHCAT(INSTANCE) ; private entry point |
307 | + ; set new $ZG and $ZRO by concatenating conventional names to $$ROOT. |
308 | + ; NOTE: this code makes assumptions about the directory layout of the |
309 | + ; OpenVista instance. |
310 | ; |
311 | S %ZG=$$PATH(INSTANCE)_"/globals/mumps.gld" |
312 | S %ZRO=$$PATH(INSTANCE)_"/objects("_$$PATH(INSTANCE)_"/routines) "_$$PATH(INSTANCE)_"/gtm" |
313 | ; |
314 | ; FIXME: check that %ZG actually exists and that all pieces of %ZRO exist |
315 | - Q 1 |
316 | + Q |
317 | ; |
318 | -SWITCHREP(INSTANCE) ; private entry point to be used by $$SWITCH only |
319 | +SWITCHREP(INSTANCE) ; private entry point |
320 | ; set new $ZG and $ZRO by replacing $$PATH($$CURRENT()) with $$PATH(INSTANCE) |
321 | ; |
322 | ; FIXME: implement this |
323 | - Q 0 |
324 | + Q |
325 | ; |
326 | MKTEMP() ; create a secure temporary directory, returns path to new directory |
327 | N %PIPE,%I S %PIPE="mktemp",%I=$I |
328 | |
329 | === modified file 'mumps/ZOSFGUX.m' |
330 | --- mumps/ZOSFGUX.m 2009-06-05 18:44:13 +0000 |
331 | +++ mumps/ZOSFGUX.m 2009-06-26 07:02:30 +0000 |
332 | @@ -1,4 +1,4 @@ |
333 | -ZOSFGUX ;SFISC/MVB,PUG/TOAD MSC/JDS- ZOSF Table for GT.M for Unix ;6JUN2009 |
334 | +ZOSFGUX ;SFISC/MVB,PUG/TOAD MSC/JDS,JKT- ZOSF Table for GT.M for Unix ;26JUN2009 |
335 | ;;8.0;KERNEL;**275,MSC**;Jul 10, 1995 |
336 | ;; for GT.M for Unix, version 4.3 |
337 | ; |
338 | @@ -100,7 +100,7 @@ |
339 | ;;RSUM |
340 | ;;S Y=0 F %=1,3:1 S %1=$T(+%^@X),%3=$F(%1," ") Q:'%3 S %3=$S($E(%1,%3)'=";":$L(%1),$E(%1,%3+1)=";":$L(%1),1:%3-2) F %2=1:1:%3 S Y=$A(%1,%2)*%2+Y |
341 | ;;SS |
342 | - ;;D ^MSCZJOB |
343 | + ;;D ^%SS |
344 | ;;SAVE |
345 | ;;D SAVE^%ZOSV2(X) ;N %I,%F S %I=$I,%F=$P($S($ZRO["(":$P($P($ZRO,"(",2),")"),1:$ZRO)," ")_"/"_X_".m" O %F:(NEWVERSION) U %F X "F S XCN=$O(@(DIE_XCN_"")"")) Q:+XCN'=XCN S %=@(DIE_XCN_"",0)"") Q:$E(%,1)=""$"" I $E(%)'="";"" W %,!" C %F U %I |
346 | ;;SIZE |
347 | |
348 | === modified file 'mumps/ZUGTM.m' |
349 | --- mumps/ZUGTM.m 2009-06-09 20:13:51 +0000 |
350 | +++ mumps/ZUGTM.m 2009-06-26 00:26:42 +0000 |
351 | @@ -1,4 +1,4 @@ |
352 | -ZU ;SF/JLI,RWF MSC/JDS- For GT.M, TIE ALL TERMINALS TO THIS ROUTINE!! ;01MAY2009 |
353 | +ZU ;SF/JLI,RWF MSC/JDS,JKT- For GT.M, TIE ALL TERMINALS TO THIS ROUTINE!! ;25JUN2009 |
354 | ;;8.0;KERNEL;**275,MSC**;Jul 10, 1995 |
355 | ; for GT.M for VMS & Unix, version 4.3 |
356 | ; |
357 | @@ -81,6 +81,7 @@ |
358 | I $G(^XUTL("XUSYS","COMMAND"))'="EXAM" ZSHOW "SD":^XUTL("XUSYS",$J,"JE") |
359 | I $G(^XUTL("XUSYS","COMMAND"))="EXAM" ZSHOW "*":^XUTL("XUSYS",$J,"JE") |
360 | I $G(^XUTL("XUSYS",$J,"CMD"))="HALT" ;To do. |
361 | + S ^TMP("MSCZJOB",$J,0)=$H |
362 | ZSHOW "*":^TMP("MSCZJOB",$J) |
363 | Q 1 |
364 | ; |