- XUTMTPD ;SEA/RDS - TaskMan: ToolKit, Print For Delete ;01/31/96 11:34 [ 04/02/2003 8:29 AM ]
- ;;8.0;KERNEL;**1002,1003,1004,1005,1007**;APR 1, 2003
- ;;8.0;KERNEL;**20**;Jul 10, 1995
- ;
- SCHED ;Lookup Tasks In Schedule File
- N DIR,X,Y,ZT,ZT1,ZT2,ZT3,ZT4,ZT5,ZT6,ZTF,ZTIOSL,ZTS
- K ^TMP($J,"XUTMTPD"),ZTSK S X=0,ZTIOSL=$Y,ZTSK=0
- S ZT1="" F S ZT1=$O(^%ZTSCH(ZT1)),ZT2="" Q:'ZT1 F S ZT2=$O(^%ZTSCH(ZT1,ZT2)) Q:ZT2="" S ZTS=ZT2 D DISPLAY G QUIT:$D(DIRUT)
- S ZT1="" F S ZT1=$O(^%ZTSCH("IO",ZT1)),ZT2="" Q:ZT1="" F S ZT2=$O(^%ZTSCH("IO",ZT1,ZT2)),ZT3="" Q:ZT2="" F S ZT3=$O(^%ZTSCH("IO",ZT1,ZT2,ZT3)) Q:ZT3="" S ZTS=ZT3 D DISPLAY G QUIT:$D(DIRUT)
- S ZT1="" F S ZT1=$O(^%ZTSCH("JOB",ZT1)),ZT2="" Q:ZT1="" F S ZT2=$O(^%ZTSCH("JOB",ZT1,ZT2)) Q:ZT2="" S ZTS=ZT2 D DISPLAY G QUIT:$D(DIRUT)
- S ZT1="" F S ZT1=$O(^%ZTSCH("LINK",ZT1)),ZT2="" Q:ZT1="" F S ZT2=$O(^%ZTSCH("LINK",ZT1,ZT2)),ZT3="" Q:ZT2="" F S ZT3=$O(^%ZTSCH("LINK",ZT1,ZT2,ZT3)) Q:ZT3="" S ZTS=ZT3 D DISPLAY G QUIT:$D(DIRUT)
- ;
- TASK ;Lookup Unscheduled Tasks In Task File
- S ZT1="" F S ZT1=$O(^TMP($J,"XUTMT",ZT1)) Q:ZT1="" D RANGE:$D(^(ZT1))=10 G QUIT:$D(^(ZT1))=10&X I $D(^TMP($J,"XUTMT",ZT1))=1,$D(^%ZTSK(ZT1)) S ZTS=ZT1 D DISPLAY G QUIT:$D(DIRUT)
- I ZTSK W !
- ;
- QUIT ;Cleanup And Quit
- K ^TMP($J,"XUTMTPD") Q
- ;
- RANGE ;TASK--Process A Range
- S ZT3=ZT1,(ZT2,ZTS)=$O(^TMP($J,"XUTMT",ZT1,"")) I $D(^%ZTSK(ZTS)) D DISPLAY Q:X
- F ZT=0:0 S ZTS=$O(^%ZTSK(ZTS)) Q:ZTS>ZT3!'ZTS D DISPLAY Q:X
- Q
- ;
- DISPLAY ;SUB--Add Either One Or Zero To The Count Of Scheduled Tasks In List
- ;
- D2 ;First Screen By Whether Task Has Already Been Counted
- I $D(^TMP($J,"XUTMTPD",ZTS))#2 Q
- ;
- D5 ;Then Screen by Whether Task Is Within Range
- I '$D(^TMP($J,"XUTMT",ZTS)) S ZT5=$O(^TMP($J,"XUTMT",ZTS)) Q:ZT5="" S ZT6=$O(^(ZT5,"")) Q:ZT6>ZTS!'ZT6
- ;
- D8 ;Finally Screen By Whether User Has Authority To Select Task
- N X
- I 'ZTKEY S X=$G(^%ZTSK(ZTS,0)) I $S(X="":1,$P(X,U,11)_","_$P(X,U,12)=XUTMUCI:DUZ'=$P(X,U,3),1:ZTNAME'=$P(X,U,10)) Q
- L
- ;
- D12 ;Display And Count Tasks Not Screened Out
- S ^TMP($J,"XUTMTPD",ZTS)="",ZTSK=ZTSK+1
- N XUTMT,ZTSK S X=0,ZTF=0 D EN^XUTMTP(ZTS)
- W !,"-------------------------------------------------------------------------------"
- I $Y-ZTIOSL>18 S ZTF=1,ZTIOSL=0,DIR(0)="E" D ^DIR Q:$D(DIRUT) W @IOF
- Q
- ;
- XUTMTPD ;SEA/RDS - TaskMan: ToolKit, Print For Delete ;01/31/96 11:34 [ 04/02/2003 8:29 AM ]
- +1 ;;8.0;KERNEL;**1002,1003,1004,1005,1007**;APR 1, 2003
- +2 ;;8.0;KERNEL;**20**;Jul 10, 1995
- +3 ;
- SCHED ;Lookup Tasks In Schedule File
- +1 NEW DIR,X,Y,ZT,ZT1,ZT2,ZT3,ZT4,ZT5,ZT6,ZTF,ZTIOSL,ZTS
- +2 KILL ^TMP($JOB,"XUTMTPD"),ZTSK
- SET X=0
- SET ZTIOSL=$Y
- SET ZTSK=0
- +3 SET ZT1=""
- FOR
- SET ZT1=$ORDER(^%ZTSCH(ZT1))
- SET ZT2=""
- IF 'ZT1
- QUIT
- FOR
- SET ZT2=$ORDER(^%ZTSCH(ZT1,ZT2))
- IF ZT2=""
- QUIT
- SET ZTS=ZT2
- DO DISPLAY
- IF $DATA(DIRUT)
- GOTO QUIT
- +4 SET ZT1=""
- FOR
- SET ZT1=$ORDER(^%ZTSCH("IO",ZT1))
- SET ZT2=""
- IF ZT1=""
- QUIT
- FOR
- SET ZT2=$ORDER(^%ZTSCH("IO",ZT1,ZT2))
- SET ZT3=""
- IF ZT2=""
- QUIT
- FOR
- SET ZT3=$ORDER(^%ZTSCH("IO",ZT1,ZT2,ZT3))
- IF ZT3=""
- QUIT
- SET ZTS=ZT3
- DO DISPLAY
- IF $DATA(DIRUT)
- GOTO QUIT
- +5 SET ZT1=""
- FOR
- SET ZT1=$ORDER(^%ZTSCH("JOB",ZT1))
- SET ZT2=""
- IF ZT1=""
- QUIT
- FOR
- SET ZT2=$ORDER(^%ZTSCH("JOB",ZT1,ZT2))
- IF ZT2=""
- QUIT
- SET ZTS=ZT2
- DO DISPLAY
- IF $DATA(DIRUT)
- GOTO QUIT
- +6 SET ZT1=""
- FOR
- SET ZT1=$ORDER(^%ZTSCH("LINK",ZT1))
- SET ZT2=""
- IF ZT1=""
- QUIT
- FOR
- SET ZT2=$ORDER(^%ZTSCH("LINK",ZT1,ZT2))
- SET ZT3=""
- IF ZT2=""
- QUIT
- FOR
- SET ZT3=$ORDER(^%ZTSCH("LINK",ZT1,ZT2,ZT3))
- IF ZT3=""
- QUIT
- SET ZTS=ZT3
- DO DISPLAY
- IF $DATA(DIRUT)
- GOTO QUIT
- +7 ;
- TASK ;Lookup Unscheduled Tasks In Task File
- +1 SET ZT1=""
- FOR
- SET ZT1=$ORDER(^TMP($JOB,"XUTMT",ZT1))
- IF ZT1=""
- QUIT
- IF $DATA(^(ZT1))=10
- DO RANGE
- IF $DATA(^(ZT1))=10&X
- GOTO QUIT
- IF $DATA(^TMP($JOB,"XUTMT",ZT1))=1
- IF $DATA(^%ZTSK(ZT1))
- SET ZTS=ZT1
- DO DISPLAY
- IF $DATA(DIRUT)
- GOTO QUIT
- +2 IF ZTSK
- WRITE !
- +3 ;
- QUIT ;Cleanup And Quit
- +1 KILL ^TMP($JOB,"XUTMTPD")
- QUIT
- +2 ;
- RANGE ;TASK--Process A Range
- +1 SET ZT3=ZT1
- SET (ZT2,ZTS)=$ORDER(^TMP($JOB,"XUTMT",ZT1,""))
- IF $DATA(^%ZTSK(ZTS))
- DO DISPLAY
- IF X
- QUIT
- +2 FOR ZT=0:0
- SET ZTS=$ORDER(^%ZTSK(ZTS))
- IF ZTS>ZT3!'ZTS
- QUIT
- DO DISPLAY
- IF X
- QUIT
- +3 QUIT
- +4 ;
- DISPLAY ;SUB--Add Either One Or Zero To The Count Of Scheduled Tasks In List
- +1 ;
- D2 ;First Screen By Whether Task Has Already Been Counted
- +1 IF $DATA(^TMP($JOB,"XUTMTPD",ZTS))#2
- QUIT
- +2 ;
- D5 ;Then Screen by Whether Task Is Within Range
- +1 IF '$DATA(^TMP($JOB,"XUTMT",ZTS))
- SET ZT5=$ORDER(^TMP($JOB,"XUTMT",ZTS))
- IF ZT5=""
- QUIT
- SET ZT6=$ORDER(^(ZT5,""))
- IF ZT6>ZTS!'ZT6
- QUIT
- +2 ;
- D8 ;Finally Screen By Whether User Has Authority To Select Task
- +1 NEW X
- +2 IF 'ZTKEY
- SET X=$GET(^%ZTSK(ZTS,0))
- IF $SELECT(X="":1,$PIECE(X,U,11)_","_$PIECE(X,U,12)=XUTMUCI:DUZ'=$PIECE(X,U,3),1:ZTNAME'=$PIECE(X,U,10))
- QUIT
- +3 LOCK
- +4 ;
- D12 ;Display And Count Tasks Not Screened Out
- +1 SET ^TMP($JOB,"XUTMTPD",ZTS)=""
- SET ZTSK=ZTSK+1
- +2 NEW XUTMT,ZTSK
- SET X=0
- SET ZTF=0
- DO EN^XUTMTP(ZTS)
- +3 WRITE !,"-------------------------------------------------------------------------------"
- +4 IF $Y-ZTIOSL>18
- SET ZTF=1
- SET ZTIOSL=0
- SET DIR(0)="E"
- DO ^DIR
- IF $DATA(DIRUT)
- QUIT
- WRITE @IOF
- +5 QUIT
- +6 ;