cANCJOB(SWADM) ;Actieve jobs ;cANCJOB; [ 06/19/01 11:40 AM ] ; ; SWADM = switch die aangeeft waar (en door wie) het programma wordt uitgevoerd ; G 1 ; T0 ;Actieve jobs ; T1 ;Job; T2 ;Initialen; T3 ;Ref.poort; T4 ;Namespace; T5 ;Firma; T6 ;Menu-lijn; T7 ;Transactie; T8 ;Routine; T9 ;Job ; zit middenin een transactie\"0[] = deze job niet stoppen 1[] = deze job wel stoppen"; T10 ;Stoppen alle jobs\".[] = doorgaan"; T11 ;Job ; kon niet worden gestopt; ; T0F ;Jobs actifs; T1F ;Job; T2F ;Initiales; T3F ;Port réf.; T4F ;Namespace; T5F ;Firme; T6F ;Ligne menu; T7F ;Transaction; T8F ;Routine; T9F ;Job ; est en pleine transaction\"0[] = ne pas arrêter ce job 1[] = arrêter ce job"; T10F ;Arrêter tous les jobs\".[] = continuer"; T11F ;Job ; n'a pas été arrêté; ; T0E ;Actieve jobs ; T1E ;Job; T2E ;Initialen; T3E ;Ref.poort; T4E ;Namespace; T5E ;Firma; T6E ;Menu-lijn; T7E ;Transactie; T8E ;Routine; T9E ;Job ; zit middenin een transactie\"0[] = deze job niet stoppen 1[] = deze job wel stoppen"; T10E ;Stoppen alle jobs\".[] = doorgaan"; T11E ;Job ; kon niet worden gestopt; ; 1 D P^cA612(2,1,20,80,1,0,1,1,$P($T(@("T0"_QT)),U,2),0,0,7,1,1) 11 D BOUW ; Oproepen horizontaal scherm 13 D RS^cAN210("JOB","0","0","0","") ; YZ K ^TEMP(boot,$J,"JOBS"),^TEMP(boot,$J,"LOCKS") D C^cA612 Q ; R0 S $P(R,D,12)=$T(+0) D ^cAN1000 Q ; BOUW ; Opbouwen van de actieve jobs K ^TEMP(boot,$J,"JOBS") N VNR,PID,STRING S $ZT="TRAP^cAN000" K JOB D @("BUILD^"_"%SS") S VNR=0 F S VNR=$O(JOB(0,VNR)) Q:VNR="" D . S PID=JOB(0,VNR) . S STRING=$$JOB(PID,1) BOUWZ Q ; INI(PID) ; Functie die de variale INI bepaalt ; PID = Process ID N NSPACE,INI S $ZT="TRAP^cAN000" I ($ZU(67,10,PID)>3),($ZU(67,10,PID)'=48),($ZU(67,10,PID)'=84) S INI="z" G INIZ S NSPACE=$ZU(67,6,PID) I '$L(NSPACE) S INI="z" G INIZ I $E(NSPACE,1,2)="^^" S INI="z" G INIZ I '$D(@("^|"""_NSPACE_"""|cJOB(PID)")) S INI="z" G INIZ S INI=$G(@("^|"""_NSPACE_"""|cJOB(PID,boot,""job"",""qu"")")) I $L(INI)="" S INI=" " INIZ Q INI ; JOB(PID,BOUW) ; Ophalen gegevens ivm actieve job ; PID = Process ID ; BOUW = switch die aangeeft of de global opnieuw moet worden opgebouwd N NSPACE,INI,REFP,GREF,MLIJN,NGEBR,CLIENT,I1,LBEW,FNAAM N ROUT,I,IQ1,STAT,ALOCK,DLOGIN,ULOGIN,LOGIN,DLBEW,ULBEW,STRING N SYST,Q S $ZT="TRAP^cAN000" S NSPACE=$ZU(67,6,PID) S IQ1=1 S INI=$$INI(PID) I INI="z" S SYST=1 G JOBA S REFP=$G(^("IO")) S GREF=$P($G(^("menu_gref")),"(") S MLIJN=$S(QT="F":$P($G(^("menu_line")),D,11),1:$P($G(^("menu_line")),D)) S NGEBR=$G(^("qu2")) S CLIENT=$G(^("NBN")) S I1=$G(^("login")) S LBEW=$G(^("date_time")) S Q=$G(^("q")) I '$L(Q) S Q=$P($G(@("^|"""_NSPACE_"""|cLOG(boot,""Q"",NSPACE)")),D,2) S FNAAM=$G(@("^|"""_NSPACE_"""|"_Q_"BA(99,1)")) S I=$ZU(67,7,PID) I $L(I),$D(@("^|"""_NSPACE_"""|"_Q_"BA(""%1"",I)")) S IQ1=^(I) I $G(I1)="" S DLOGIN="",ULOGIN="" G JOBA I '$D(@("^|"""_NSPACE_"""|LOGIN(NSPACE,""LOGIN"",I1,0)")) G JOBA S LOGIN=$P(^(0),D,3) S DLOGIN=$$HD^cAFD1(LOGIN) S ULOGIN=$$HT^cAFD1(LOGIN) JOBA K ^TEMP(boot,$J,"JOBS",INI_" "_PID) S ROUT=$ZU(67,5,PID) S STAT=+$ZU(67,4,PID) S ALOCK=$$LOCKJ^cANCLCK(PID,1) JOBB I $G(LBEW)="" S DLBEW="",ULBEW="" G JOBC S DLBEW=$P(LBEW,D) S ULBEW=$TR($TR($P(LBEW,D,2)," ",""),"u",":") JOBC S STRING=$G(INI)_D_PID_D_$G(REFP)_D_$G(FNAAM)_D_$G(MLIJN)_D_$G(ROUT)_D_IQ1_D_STAT_D_ALOCK_D_$G(NGEBR)_D_$G(NSPACE)_D_$G(CLIENT)_D_$G(DLOGIN)_D_$G(ULOGIN)_D_DLBEW_D_ULBEW_D_$G(SYST)_D_$G(Q)_D_$G(GREF) I $G(BOUW) S ^TEMP(boot,$J,"JOBS",INI_" "_PID)=STRING JOBZ Q STRING ; LOGJOB(INI,PID) ; Aanmaken logging gestopte jobs N DAT,UUR,VNR,LVNR,STRING,UI1,TAB,K S $ZT="TRAP^cAN000" D ^cA106,^cA105 S DAT=DT,UUR=TD S VNR=INI_" "_PID_" "_DAT_"."_"z" S VNR=$O(^DJOB(0,"JOBS",VNR),-1) I VNR=""!($P(VNR,".",1)'=(INI_" "_PID_" "_DAT)) S VNR=1 I ($P(VNR,".")=(INI_" "_PID_" "_DAT)) S VNR=$P(VNR,".",2)+1 S VNR=$TR($J(VNR,4)," ",0) S UI1=(INI_" "_PID_" "_DAT_"."_VNR) S TAB(1)=^TEMP(boot,$J,"JOBS",INI_" "_PID) S $P(TAB(1),D,20)=QU_D_DAT_D_UUR_D_"cANCJOB" D P^cAN220("DJOB","0",UI1,"TAB","") S LVNR="" F S LVNR=$O(^TEMP(boot,$J,"JOBS",INI_" "_PID,"LOCKS",LVNR)) Q:LVNR="" D . S STRING=^(LVNR) . S ^DJOB(0,"JOBS.LOCK",INI_" "_PID_" "_DAT_"."_VNR,LVNR)=STRING LOGJOBZ Q ; SJOB ; Stoppen alle jobs N STOP,VNR,STRING,PID,OK S $ZT="TRAP^cAN000" S R="STOP\22\3\"_$P($T(@("T10"_QT)),U,2)_"\1\\"".-""[K" D R0 I K="-" G SJOBZ S VNR="" F S VNR=$O(^TEMP(boot,$J,"JOBS",VNR)) Q:VNR="" D . S STRING=^(VNR) . S PID=$P(STRING,D,2) . I $P(STRING,D,17)=1!(PID=$J) Q . S OK=$$TJOB(PID) . I OK D VJOB(PID) SJOBZ Q ; STATUS(STAT) ; Ophalen van de omschrijving van de status N R S $ZT="TRAP^cAN000" S R=STAT I STAT=0 S R="Run" G STATUSZ I STAT=1 S R="Lock" G STATUSZ I STAT=2 S R="Open device" G STATUSZ I STAT=3 S R="Close device" G STATUSZ I STAT=4 S R="In use" G STATUSZ I STAT=5 S R="Read" G STATUSZ I STAT=6 S R="Write" G STATUSZ I STAT=7 S R="gget" G STATUSZ I STAT=8 S R="gset" G STATUSZ I STAT=9 S R="gkill" G STATUSZ I STAT=10 S R="$ORDER" G STATUSZ I STAT=11 S R="$QUERY" G STATUSZ I STAT=12 S R="gdefval" G STATUSZ I STAT=13 S R="$ZF" G STATUSZ I STAT=14 S R="HANG" G STATUSZ I STAT=15 S R="Jobbing" G STATUSZ I STAT=16 S R="^JOBEXAM" G STATUSZ I STAT=17 S R="Broadcasting" G STATUSZ I STAT=18 S R="Suspended" G STATUSZ STATUSZ Q R ; TJOB(PID) ; Test of een job mag verwijderd worden N NSPACE,GREF,I,TRANS,BEV,R,Q S $ZT="TRAP^cAN000" S TRANS=1 S NSPACE=$ZU(67,6,PID) I '$L(NSPACE) S GREF="" G TJOBA I $E(NSPACE,1,2)="^^" S GREF="",TRANS=1 G TJOBA S Q=$G(@("^|"""_NSPACE_"""|cJOB(PID,boot,""job"",""q"")")) I '$L(Q) S Q=$P($G(@("^|"""_NSPACE_"""|cLOG(boot,""Q"",NSPACE)")),D,2) S I=$ZU(67,7,PID) I $L(I),$D(@("^|"""_NSPACE_"""|"_Q_"BA(""%1"",I)")) S TRANS=^(I) TJOBA I TRANS=1 S R=2 G TJOBZ S R="BEV\22\3\"_$P($T(@("T9"_QT)),U,2)_PID_$P($T(@("T9"_QT)),U,3)_"\1\\""01-""[K" D R0 I BEV=0!(BEV="-") S R=0 S USYN="S K=""-""" I BEV=1 S R=2 TJOBZ Q R ; TOP S OK=0 S UTOP(1)=1_D_1_D_$P($T(@("T1"_QT)),U,2)_D_4 S UTOP(1.1)=1_D_11_D_": "_$P(STRING,D,2) S UTOP(2)=2_D_1_D_$P($T(@("T2"_QT)),U,2)_D_4 S UTOP(2.1)=2_D_11_D_": "_$S($P(STRING,D)="z":"",1:$P(STRING,D)) S UTOP(3)=3_D_1_D_$P($T(@("T3"_QT)),U,2)_D_4 S UTOP(3.1)=3_D_11_D_": "_$P(STRING,D,3) S UTOP(4)=1_D_21_D_$P($T(@("T4"_QT)),U,2)_D_4 S UTOP(4.1)=1_D_31_D_": "_$P(STRING,D,11) S UTOP(5)=2_D_21_D_$P($T(@("T5"_QT)),U,2)_D_4 S UTOP(5.1)=2_D_31_D_": "_$P(STRING,D,4) S UTOP(6)=3_D_21_D_$P($T(@("T6"_QT)),U,2)_D_4 S UTOP(6.1)=3_D_31_D_": "_$P(STRING,D,5) S UTOP(7)=1_D_53_D_$P($T(@("T7"_QT)),U,2)_D_4 S UTOP(7.1)=1_D_64_D_": "_$$JN^cAFO1('($P(STRING,D,7))) S UTOP(8)=2_D_53_D_$P($T(@("T8"_QT)),U,2)_D_4 S UTOP(8.1)=2_D_64_D_": "_$P(STRING,D,6) TOPZ Q ; VJOB(PID) ; Verwijderen van een job N K,INI,STRING S $ZT="TRAP^cAN000" S INI=$$INI(PID),STRING=$$JOB(PID,1),NSP=$ZU(67,6,PID) I '$L(NSP) S NSP=$ZU(5) D V^cQ14(PID,"S") S K=$ZU(4,PID) I K=1 D EJOB(PID,STRING,NSP),LOGJOB(INI,PID) I K'=1 S K=$P($T(@("T11"_QT)),U,2)_PID_$P($T(@("T11"_QT)),U,3) D TXT^cAFA1(250) VJOBZ Q ; EJOB(PID,STRING,NSP) ; Wegschrijven variablen van een gestopte job N I,% S $ZT="TRAP^cAN000" S PID=$G(PID),STRING=$G(STRING),NSP=$G(NSP) I '$L(NSP) S NSP=$ZU(5) D ^cA105,^cA106 S I=$ZU(67,7,PID) S %(0)=DT_"\"_TD_"\Job "_PID_" Dev "_I_"\Stopped in "_$P(STRING,D,6)_$S($L($P(STRING,D,5)):" ("_$P(STRING,D,5)_")",1:"")_" by "_$G(QU)_" ("_$i_"="_$G(io)_")"_"\"_$P(STRING,D,18)_"\"_$G(%time)_";"_$H I '$D(^|NSP|ERROR(0)) S ^|NSP|ERROR(0)=1 S %(1)=^|NSP|ERROR(0),^(0)=%(1)+1 S ^(%(1),0)=%(0),^(.998)=$P(STRING,D,19),^(.997)=I_"="_$P(STRING,D,3) M ^|NSP|ERROR(%(1))=^TEMP($J+.01,"VAR",PID) EJOBZ Q ; ZZ ; 06.08.01 - 17 u 28 * V7.87