Benutzerauftrag (Job) in Wartezustand versetzen
Komponente: | BS2000 |
Funktionsbereich: | Auftragsverarbeitung |
Anwendungsbereich: | JOB |
Privilegierung: | TSOS |
Berechtigungsschlüssel: | J |
Funktionsbeschreibung
Das Kommando HOLD-JOB versetzt einen noch nicht gestarteten Benutzerauftrag in den Wartezustand HELD-BY-COMMAND.
Der betreffende Auftrag, der über seine TSN oder eine vereinbarte Jobvariable identifizierbar ist, wird vom Job-Scheduler bei der Auswahl der zu startenden Jobs übergangen. Dieser Wartezustand wird nur aufgehoben durch das Kommando RESUME-JOB oder durch das Ändern der Startattribute auf START=*IMMEDIATE (Kommando MODIFY-JOB). Informationen über sich im Wartezustand befindende Aufträge können mit dem Kommando SHOW-JOB-STATUS eingeholt werden. Der Wartezustand HELD-BY-COMMAND wird dabei mit TYPE1/HO angezeigt.
Die erfolgreiche Bearbeitung des Kommandos HOLD-JOB wird an der Konsole angezeigt. Das Kommando wird in folgenden Fällen abgewiesen:
Der Job-Scheduler hat den Auftrag bereits zum Start freigegeben; gestartete Aufträge werden mit dem Kommando HOLD-TASK angehalten.
Der anzuhaltende Auftrag ist ein Dialog- oder Transaktionsauftrag (Kategorie DIA oder TP).
Der anzuhaltende Auftrag hat das Attribut START=*IMMEDIATE.
Format
HOLD-JOB | ||||||||||||||||||||
|
Operandenbeschreibung
JOB-IDENTIFICATION =
Der Batchauftrag kann wahlweise anhand seiner Auftragsnummer oder einer vereinbarten Monitoring-Jobvariablen identifiziert werden.
JOB-IDENTIFICATION = *TSN(...)
Identifizierung des Auftrages über seine Auftragsnummer.
TSN = <alphanum-name 1..4>
Auftragsnummer des Jobs, der in den Wartezustand versetzt wird.
JOB-IDENTIFICATION = *MONJV(...)
Der zu suspendierende Auftrag wird über eine Monitoring-Jobvariable angesprochen.
MONJV = <filename 1..54 without-gen-vers>
Vereinbarte Jobvariable für den Job, der in den Wartezustand versetzt wird.
JOB-IDENTIFICATION = <alphanum-name 1..4>
Auftragsnummer des zu suspendierenden Jobs.
Kommando-Returncode
(SC2) | SC1 | Maincode | Bedeutung |
---|---|---|---|
0 | CMD0001 | Ohne Fehler | |
1 | CMD0202 | Syntaxfehler | |
32 | CMD0221 | Systemfehler | |
64 | JMS0630 | Semantischer Fehler | |
64 | JMS0640 | Kommando kann nicht ausgeführt werden |
Hinweise
Wiederholungsaufträge (Kalender- und Repeatjobs) sollten nach Möglichkeit nicht angehalten werden. Lässt sich dies dennoch nicht vermeiden, so beachten Sie bitte Folgendes:
Bei Kalenderjobs wird der gesamt Ablauf angehalten. Werden im HOLD-Zustand weitere Ablauftermine erreicht, fallen diese aus.
Bei Repeatjobs wirkt das Kommando nur auf die unmittelbar nächste Wiederholung.
Wenn der Startzeitpunkt der angehaltenen Wiederholung erreicht ist, wird trotzdem bereits ihr Nachfolger erzeugt.
Der Nachfolger erbt das HOLD-Attribut nicht. Er wird aber erst gestartet, wenn der aktuelle Auftrag beendet ist, also nicht vor Beendigung des HOLD-Zustandes durch /RESUME-JOB oder /CANCEL-JOB.
Bei Systemneustart wird der gesamte Repeatjob aus dem Nachfolger rekonstruiert. Damit geht der HOLD-Zustand ggf. verloren.