Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

EXIT-PROCEDURE Prozedur beenden

&pagelevel(4)&pagelevel

Anwendungsgebiet: PROCEDURE

Kommandobeschreibung

EXIT-PROCEDURE beendet die aktuelle Prozedur und gibt die Ablaufsteuerung an die aufrufende Ebene zurück.

Auch bei ordnungsgemäßem Abschluss der Prozedur, das heißt ohne Fehler, können Fehlerinformationen weitergereicht werden. Dies muss im Operanden ERROR festgelegt werden. Die Angabe ERROR=*YES stößt die Fehlerbehandlung an, wenn SUBCODE1 nicht Null ist.

Im Operanden RESUME-PROGRAM kann vereinbart werden, dass ein geladenes Programm nach Beendigung der Prozedur fortgesetzt wird.

Fehlt das Kommando EXIT-PROCEDURE am Prozedurende, wird die Prozedur automatisch beendet, wenn bei der Ausführung das Prozedurende erreicht ist. Im Fehlerfall wird auch der Fehlercode an den Aufrufer zurückgegeben.

Format

EXIT-PROCEDURE

ERROR = *NO (...) / *YES(...)

*NO(...)

SUBCODE2 = 0 / < integer 0..255>

,MAINCODE = CMD0001 / <alphanum-name 7..7>

*YES(...)

SUBCODE1 = 64 / <integer 0..255>

,SUBCODE2 = 0 / <integer 0..255>

,MAINCODE = SDP0018 / <alphanum-name 7..7>

,RESUME-PROGRAM = *NO / *YES

Operandenbeschreibung

ERROR =
Returncode, der an den Aufrufer zurückgegeben wird.

ERROR = *NO(...)
Der Returncode der Fehlerklasse „NO-ERROR“ wird zurückgegeben. Mit den Operanden SUBCODE2 und MAINCODE können zusätzliche Informationen übermittelt werden.

SUBCODE2 = 0 / <integer 0..255>
Zusatzinformation zur Fehlerklasse. Voreingestellt ist der Wert Null, d.h. es ist keine Zusatzinformation vorhanden.

MAINCODE = CMD0001 / <alphanum-name 7..7>
Übergibt einen Meldungsschlüssel, dessen Bedeutung sich der Aufrufer mit dem Kommando HELP-MSG-INFORMATION ausgeben lassen kann. Voreingestellt ist
CMD0001, d.h. die Prozedur wurde fehlerfrei beendet.

ERROR = *YES(...)
Der Aufrufer erhält einen Returncode, der einen Fehler anzeigt. Mit den Operanden SUBCODE1, SUBCODE2 und MAINCODE können Fehlerklasse und Zusatzinformationen übermittelt werden. Sofern SUBCODE1 nicht Null ist, wird in der rufenden Prozedur die Fehlerbehandlung angestoßen.

SUBCODE1 = 64 / <integer 0..255>
Zahl, die die Fehlerklasse angibt.
Fehlerklasse 64: „SEMANTIC ERROR“.

SUBCODE2 = 0 / <integer 0..255>
Zusatzinformation zur Fehlerklasse. Null: es ist keine Zusatzinformation vorhanden

MAINCODE = SDP 0018
Defaultwert für den Maincode.

MAINCODE = <alphanum-name 7..7>
Übergibt einen Meldungsschlüssel, dessen Bedeutung sich der Aufrufer mit dem SDF-Kommando HELP-MSG-INFORMATION ausgeben lassen kann (siehe auch Handbuch „Systemmeldungen“ [15]).

RESUME-PROGRAM =
Legt fest, ob ein geladenes Programm nach Beendigung der Prozedur fortgesetzt werden soll.

RESUME-PROGRAM = *NO
Das Programm wird nach Prozedurende nicht fortgesetzt.

RESUME-PROGRAM = *YES
Das Programm wird nach Prozedurende fortgesetzt.

Kommando-Returncode

MIT EXIT-PROCEDURE ERROR = *YES kann das Kommando jeden gegebenen Returncode dem Aufrufer melden. Aus der Sicht des Aufrufers ist dies der Returncode des CALL-PROCEDURE oder INCLUDE-PROCEDURE Kommandos. Jedoch wenn die Ausführung des EXIT-PROCEDURE Kommandos selbst zu einem Fehler führt, so wird nicht zum Aufrufer zurückgekehrt, sondern einer der folgenden Returncodes geliefert und die Fehlerbehandlung innerhalb der Prozedur angestoßen.

(SC2)SC1MaincodeBedeutung

0CMD0001Ohne Fehler

1CMD0202Syntaxfehler

3CMD2203Falsche Syntaxdatei

32CMD0221Systemfehler (interner Fehler)

130SDP0099Kein Adressraum mehr verfügbar