VistA-FOIAVistA/r/KERNEL-XU-A4A7-USC-XG-XLF-X.../XUINTSK1.m

59 lines
2.2 KiB
Mathematica

XUINTSK1 ;ISCSF/RWF - TASKMAN POST INIT ;01/03/95 09:29
;;8.0;KERNEL;;Jul 10, 1995
SCH ;Move and build new schedule
N DIFROM
F X19=0:0 S X19=$O(^DIC(19,X19)) Q:X19'>0 D
. S XUTASK=0,XUNEW=0
. I $G(^DIC(19,X19,200)) D SCH1
. I $G(^DIC(19,X19,1916))["S" D SCH2
. Q
Q
SCH1 ;Move regular options
N DUZ S DUZ=0,DUZ(0)="@"
S DA=X19,XV19=^DIC(19,DA,200),X=+XV19 D K200 ;KILL OLD
S:'$D(^DIC(19,X19,200.9))&($P(XV19,U,3)]"") ^DIC(19,X19,200.9)="y"
K DD,DO
S X=X19,DIC="^DIC(19.2,",DIC(0)="L",DLAYGO=19.2 D FILE^DICN
S (DA,XUNEW)=+Y,X=X19_U_$P(XV19,U,1,2)_U_U_$P(XV19,U,4)_U_$P(XV19,U,3)
S ^DIC(19.2,DA,0)=X,DIK=DIC,DIK(1)=2 I (+XV19)'<DT D EN1^DIK
D MES^XPDUTL("Option: "_$P(^DIC(19,X19,0),U)_" move to new file.")
SCH1X K ^DIC(19,X19,200)
Q
SCH2 ;Move Special queueing
S DA=X19,XV19=$G(^DIC(19,DA,200)),XV1916=^DIC(19,DA,1916)
S:'$D(^DIC(19,X19,200.9)) ^DIC(19,X19,200.9)="s"
D K1916 K DD,DO,Y S Y=XUNEW
I 'Y S X=X19,DIC="^DIC(19.2,",DIC(0)="L",DLAYGO=19.2 D FILE^DICN
S DA=+Y,X=^DIC(19.2,DA,0),$P(X,U,5)=$P(XV19,U,4),$P(X,U,9)=$P(XV1916,U)
S ^DIC(19.2,DA,0)=X,DIK=DIC,DIK(1)=9 D EN1^DIK
D MES^XPDUTL("Option: "_$P(^DIC(19,X19,0),U)_" startup moved.")
K ^DIC(19,X19,200),^DIC(19,X19,1916)
Q
FIND ;subroutine--find scheduled task that will run this option
N DV,X,X1,Y X ^%ZOSF("UCI") S %=0,XUTASK=0,Y=$P(Y,","),OPNM=$$GET(19,DA,.01)
S X=+$S($D(ZTMQDT):ZTMQDT,$D(^DIC(19,DA,200)):$$GET(19,DA,200),1:0) I 'X Q
D H^%DTC S X=%H_","_%T,%=0
F S %=$O(^%ZTSCH(X,%)) Q:%'>0 S X1=$G(^%ZTSK(%,0)) I $P(X1,"^",1,2)="ZTSK^XQ1" D Q:XUTASK
. Q:$P(X1,"^",11)'=Y Q:$P(X1,"^",13)'[OPNM
. S:$G(^%ZTSK(%,.3,"XQY"))=DA XUTASK=% Q
Q
;
GET(FN,IEN,FE) ;
N A,B,C S A=$G(^DD(19,FE,0)),A=$P(A,"^",4)
S B=$P(A,";"),C=$P(A,";",2)
Q $P($G(^DIC(19,IEN,B)),"^",C)
;--------------------------------------------------------------------
;
K200 ;kill logic for AZTM cross-reference on field 200
S ZTMQDT=X D FIND K ZTMQDT I XUTASK'>0 Q
S DUZ=+$P($G(^%ZTSK(XUTASK,0)),"^",3) ;Set DUZ to the old owner
K ^%ZTSK(XUTASK),^%ZTSCH(X,XUTASK)
Q
;
K1916 ;kill logic for ASTARTUP cross-reference of field 1916
S ZTVOL=$$GET(19,DA,203)
X ^%ZOSF("UCI") I ZTVOL]"" S $P(Y,",",2)=ZTVOL
K ^%ZTSCH("STARTUP",Y,DA),ZTVOL
Q
;