PDA

View Full Version : Job Schedule nicht ausführen



Max One
30-11-07, 21:02
Hallo zusammen,
Kann mir bitte jemand sagen, welcher Job oder Task dafür verantwortlich ist, dass die Jobs aus dem Schedule (WRKJOBSCDE) überhaupt gestartet werden..
Anforderung: Der JobScheduler (ADDJOBSCDE) muss für die Applikationsverantwortlichen Verfügbar sein und Sie dürfen Jobs über die gesamten 24 Stunden planen. Für ein Wartungsfenster muss jedoch sicher gestellt werden, dass während des Wartungsfensters keine geplanten Jobs gestartet werden.
Ich muss also für eine bestimmte Zeit die Jobübergabe aus dem JobScheduler anhalten und danach wieder starten, ohne dabei Subsysteme oder gar das System zu beenden.
Danke für die Mithilfe

holgerscherer
30-11-07, 21:19
Hallo zusammen,
Kann mir bitte jemand sagen, welcher Job oder Task dafür verantwortlich ist,

einen Systemjob dafür kenne ich aus dem Kopf nicht (obwohl es gewiss einen gibt). Aber wie wäre es mit:

- HLDJOBJS / HLDJOBSCDE sowie RLSJOBJS / RLSJOBSCDE
- genaue Steuerung über JobD und JobQ, und die JobQ bei Bedarf anhalten?

Dürfte meines Erachtens sauberer sein als irgendeinen Systemjob an die Leine zu legen.

-h

Max One
30-11-07, 22:12
hmm.. Das Problem ist nur, dass die JobScde bisher nicht über eine speziell definierte JobD oder JobQ gesteuert werden und für die Planung durch die Appl.Admins. auch SystemJobQ(D) verwendet werden können (Richtlinien haben bisher nichts bewirkt den Wildwuchs zu bannen); ich müsste also alle JobQ's anhalten; so ist aber das gesamte SyS stillgelegt (auch die gewünschten Wartungs- und BatchJobs), und wenn ich den HLD(RLS)JOBSCDE *ALL verwende, weis ich ja beim RLS nicht, welcher Eintrag im JobScde vorher durch einen Admin. gewohlt auf *HLD gesetzt war. Darum würde ich eben gerne die gesamte Ausführung des SystemProzesses anhalten und danach wieder freigeben. Was ich bisher nicht prüfen konnte, ist Dein genannter Befehl HLDJOBJS, da mein i5 gerade den SavSys durchführt.. aber es scheint mir ein Befehl des AdvJobScde zu sein..
Wenn es dort einen solchen Befehl gibt, und der zum Anhalten des gesamten JobScde führt, muss ich wohl diesen Installieren und die Jobs aus dem SysJobScde in den AdvJobScde übernehmen..
Danks

Robi
05-12-07, 09:20
Hi,
da gibt es ein qdftjobscd, typ *jobscd
das kannst du in der betreffenden zeit renamen.
Fals dan was abbricht, erstelle dir einen leeren job-sceduler, sichere diesen irgenwohin und aktiviere ihn nach dem rename
Robi

Robi
05-12-07, 09:28
ach ich seh grade, die kannst du nicht renamen, wir haben (für eine HVF-Lösung) ein SAV und ein Restore programiert, das geht

aber Holgers
HLDJOBSCDE JOB(*ALL) ENTRYNBR(*ALL)
MONMSG MSGID(CPF0000)

müsste doch auch helfen
Robi

Fuerchau
05-12-07, 09:40
SCDJOB's werden vom Job QJOBSCD ausgeführt.
Du kannst versuchen, diesen Job zu beenden, anhalten ist für diesen Job nicht erlaubt.
Gestartet wird er allerdings nur bei IPL !!!

Ein Objekt der Art *JOBSCD läßt sich ansonsten nicht bearbeiten.

Du kannst nur per API auf diese Einträge zugreifen.

Mach dir per API eine Liste aller Einträge, bearbeite alle Einträge, die nicht angehalten sind per HLDJOBSCDE und merke dir genau diese. Anschließend gibst du genau diese per RLSJOBSCDE halt wieder frei.

PS:
Du kannst natürlich das Objekt *JOBSCD erst sichern (e.g. SAVF), dann alle Einträge anhalten und anschließend wieder zurückladen.

Max One
13-12-07, 16:30
Hey zusammen..
Besten Dank für die Typs :D . Jetzt kann ich mir wieder ein paar gedanken dazu machen. Ich werde ein leeres *JOBSCDE Objekt erstellen und dieses immer dann restoren, wenn keine Jobs laufen sollen und danach wieder zurück.. das ist eine super Idee :). Die Variante mit dem Job beenden wäre auch nicht übel, wenn dieser eben ReStart fähig wäre - event. investiere ich da noch einmal etwas Zeit aber zur Zeit bin ich mit euren Vorschlägen echt einen Schritt weiter.
Danks
MaxOne