Abschnitt zur Fehlerbehandlung (Spin-Off) kennzeichnen
Komponente: | SYSFILE |
Funktionsbereich: | Dateiverarbeitung |
Anwendungsbereich: | JOB |
Privilegierung: | STD-PROCESSING |
Funktionsbeschreibung
Mit dem Kommando SET-JOB-STEP kann eine Prozedur oder ENTER-Datei in Abschnitte unterteilt werden.
Zu SET-JOB-STEP wird verzweigt, wenn in einer Prozedur oder einem Batchauftrag Spin-Off ausgelöst wird (siehe unten: „Verfahren“). Das Kommando setzt
die Auftragsschalter 16 bis 31 zurück (Wert *OFF),
über das ISP-Kommando PARAMETER gesetzte Angaben für Sprachübersetzer auf ihre Standardwerte zurück.
Es darf nur in Prozeduren und ENTER-Dateien verwendet werden. Im Dialog wird es ignoriert und wird deshalb auch nicht im Menü angeboten. In S-Prozeduren sollte zur Fehlerbehandlung das Kommando IF-BLOCK-ERROR verwendet werden.
Wird SET-JOB-STEP gegeben, während ein Programm geladen ist, so erscheint eine Fehlermeldung.
Verfahren
Tritt beim Ablauf ein fehlerhaftes Kommando auf, so sind folgende Auswirkungen möglich:
das fehlerhafte Kommando wird ignoriert, die Verarbeitung wird beim nachfolgenden Kommando fortgesetzt,
das fehlerhafte Kommando wird abgewiesen, die nachfolgenden Kommandos werden jedoch ignoriert,mit Ausnahme der folgenden Kommandos:
EXIT-JOB, CANCEL-PROCEDURE, END-PROCEDURE, EXIT-PROCEDURE, LOGOFF, SET-JOB-STEP.
Dieses Verhalten nennt man Spin-Off.
Die Kommandos EXIT-JOB und LOGOFF beenden den Auftrag, das Kommando CANCEL-PROCEDURE die Prozedur. Die Kommandos END-PROCEDURE und EXIT-
PROCEDURE veranlassen den Rücksprung in die zuletzt verlassene Prozedur-Ebene, schalten jedoch den Spin-Off-Mechanismus nicht aus.
Das Kommando SET-JOB-STEP schaltet den Spin-Off-Mechanismus aus, und die Prozedur wird beim nachfolgenden Kommando normal fortgesetzt.
Spin-Off wird in folgenden Fällen ausgelöst:
bei syntaktischen Fehlern; dies gilt für alle Kommandos,
bei inhaltlichen Fehlern; dies gilt nicht für alle Kommandos.
Format
SET-JOB-STEP | Kurzname: STJSP |
Kommando-Returncode
(SC2) | SC1 | Maincode | Bedeutung |
---|---|---|---|
0 | CMD0001 | Kommando ausgeführt | |
32 | EXC0041 | Systemfehler | |
130 | CMD2282 | Kommando nicht möglich, da ein Programm geladen ist |