Anwendungsgebiet: PROCEDURE
Kommandobeschreibung
IF-CMD-ERROR leitet eine Kommandofolge ein, die durchlaufen wird, wenn im unmittelbar vorhergehenden Kommando ein Fehler auftritt. Hiermit ist eine gezielte Fehlerbehandlung für dieses Kommando möglich und eine Blockfehlerbehandlung wird somit verhindert.
IF-CMD-ERROR hat nach folgenden Kommandos keine Wirkung:
IF / END-IF
FOR
WHILE
REPEAT
BEGIN-BLOCK
GOTO
CYCLE
EXIT-BLOCK
Im IF-CMD-ERROR-Block kann mit dem Kommando ELSE ein ELSE-Zweig definiert werden. Zusätzlich wird implizit ein SAVE-RETURNCODE-Kommando im ELSE-Zweig ausgeführt, sodass der aktuelle Returncode des Kommandos auch zugreifbar ist, wenn das Kommando ohne Fehler ausgeführt wurde. Abgeschlossen wird der IF-CMD-ERROR-Block mit dem Kommando END-IF.
Wird IF-CMD-ERROR aufgerufen, ohne dass ein Fehler auftrat, wird der ELSE-Zweig durchlaufen – wenn vorhanden – oder die Kommandoausführung nach dem zugehörigen END-IF fortgesetzt.
Format
IF-CMD-ERROR |
Kommando-Returncode
(SC2) | SC1 | Maincode | Bedeutung |
0 | CMD0001 | Ohne Fehler | |
1 | CMD0202 | Syntaxfehler | |
1 | SDP0118 | Kommando im falschen Kontext | |
1 | SDP0223 | Falsche Umgebung | |
3 | CMD2203 | Falsche Syntaxdatei | |
32 | CMD0221 | Systemfehler (interner Fehler) | |
130 | SDP0099 | Kein Adressraum mehr verfügbar |
Beispiel
Siehe Abschnitt „Fehlerbehandlung“.
Hinweis
Das dem IF-CMD-ERROR vorangehende Kommando und der IF-CMD-ERROR-Block bilden quasi einen BEGIN-Block.