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-BLOCK Verarbeitung eines Kommandoblocks abbrechen

&pagelevel(4)&pagelevel

Anwendungsgebiet: PROCEDURE

Kommandobeschreibung

EXIT-BLOCK bricht die Verarbeitung eines Kommandoblocks ab (BEGIN-, FOR-, IF-, WHILE-, REPEAT-Block etc.) und setzt den Prozedurlauf mit dem Kommando fort, das auf das Blockabschlusskommando folgt. Bei einem BEGIN-Block, der mit einem INCLUDE-BLOCK-Kommando aufgerufen wurde, wird der Prozedurlauf mit dem Kommando fortgesetzt, das auf das INCLUDE-BLOCK-Kommando folgt.

Die Ausführung des Kommandos EXIT-BLOCK kann von einer Bedingung abhängig gemacht werden.

Hinweis

  • Aus Dialogblöcken ist nur die Rückkehr zur Dialogebene möglich

  • Im Kommando ist keine Ausdruckersetzung (&....) möglich.

Format

EXIT-BLOCK

BLOCK = *LAST / *ALL / <structured-name 1..255>

,CONDITION = *NONE / <text 1..1800 with-low bool-expr>

Operandenbeschreibung

BLOCK =
Bezeichnet den Block, der abgebrochen werden soll.

BLOCK = *LAST
Verweis auf den unmittelbar umgebenden Block; dieser wird abgebrochen.

BLOCK = *ALL
Die Verarbeitung aller umgebenden Blöcke wird abgebrochen; aus einem Dialogblock wird in die Dialogebene zurückgekehrt.

BLOCK = <structured-name 1..255>
Verweis auf die Marke des umgebenden Blocks, der abgebrochen werden soll.

CONDITION =
Beschreibt eine Bedingung für die Ausführung des EXIT-BLOCK-Kommandos.

CONDITION = *NONE
Das Kommando wird immer ausgeführt.

CONDITION = <text 1..1800 with-low bool-expr>
Das Kommando wird nur ausgeführt, wenn der angegebene boolsche Ausdruck den Wert „TRUE“ ergibt.

Kommando-Returncode

(SC2)SC1MaincodeBedeutung

0CMD0001Ohne Fehler

1CMD0202Syntaxfehler

1SDP0118Kommando im falschen Kontext

1SDP0223Falsche Umgebung

3CMD2203Falsche Syntaxdatei

32CMD0221Systemfehler (interner Fehler)

64SDP0091Semantikfehler (unkorrekter Ausdruck)

130SDP0099Kein Adressraum mehr verfügbar

Beispiel 1

/LOOP: WHILE (BED < 9)
:
:
/IF (EING='*END')
/WRITE-TEXT 'Verarbeitung beendet'
/EXIT-BLOCK LOOP
/END-IF
:
:
/END-WHILE
/"Hier geht es nach Ausführung von EXIT-BLOCK weiter" 

Beispiel 2

/J=0
/FOR I=('Zeile 1','Zeile 2','Zeile 3','Zeile 4)
/J=J+1
/EXIT-BLOCK BLOCK=*LAST,CONDITION=(J>3)
/SHOW-VARIABLE I
/END-FOR

Ausgabe:

I = Zeile 1
I = Zeile 2
I = Zeile 3

Das vierte Element der Liste wird nicht mehr ausgewertet.