PERFORM BREAK [PROCESSING]
[(r)]
|
AT BREAK
statement
|
Dieser Abschnitt behandelt folgende Themen:
Eine Erläuterung der in dem Syntax-Diagramm verwendeten Symbole entnehmen Sie dem Abschnitt Syntax-Symbole.
Verwandte Statements: ACCEPT/REJECT |
AT BREAK | AT START OF DATA | AT END OF DATA | BACKOUT TRANSACTION | BEFORE
BREAK PROCESSING | DELETE | END
TRANSACTION | FIND |
GET | GET SAME | GET TRANSACTION
DATA | HISTOGRAM
| LIMIT | PASSW | READ
| RETRY | STORE | UPDATE
Gehört zur Funktionsgruppe: Datenbankzugriffe und Datenbankänderungen
Das Statement PERFORM BREAK PROCESSING dient dazu, bei
Verarbeitungsschleifen, die mit FOR,
REPEAT, CALL LOOP oder CALL FILE ausgelöst wurden, dort eine
Gruppenwechsel-Verarbeitung auszulösen, wo keine automatische Gruppenwechsel-Verarbeitung
durchgeführt wird, oder wenn eine Gruppenwechsel-Verarbeitung gewünscht wird.
Im Gegensatz zu einer automatischen Gruppenwechsel-Verarbeitung, die ausgeführt wird,
unmittelbar nachdem der Datensatz gelesen wurde, wird ein PERFORM BREAK
PROCESSING-Statement dann ausgeführt, wenn es im normalen Programmablauf
auftaucht.
Das PERFORM BREAK PROCESSING-Statement überprüft anhand des Wertes eines
Kontrollfeldes, ob eine Gruppenwechsel-Bedingung erfüllt wird, und bewirkt außerdem eine
Auswertung der Natural-Systemfunktionen. Diese Prüfung und Auswertung findet jedesmal,
wenn das Statement ausgeführt wird, statt. Die Ausführung eines PERFORM BREAK
PROCESSING-Statements kann an eine mit einem IF-Statement angegebene logische Bedingung geknüpft
werden.
| Syntax-Element | Beschreibung |
|---|---|
(r) |
Statement-Referenzierung:
Normalerweise wird die Durch Verwendung eines Statement-Labels oder Angabe der Quellcode-Zeilennummer
mittels Notation
|
AT BREAK
statement...
|
Siehe Syntax des |
** Example 'PBPEX1S': PERFORM BREAK PROCESSING (structured mode)
************************************************************************
DEFINE DATA LOCAL
1 #INDEX (N2)
1 #LINE (N2) INIT <1>
END-DEFINE
*
FOR #INDEX 1 TO 18
PERFORM BREAK PROCESSING
/*
AT BREAK OF #INDEX /1/
WRITE NOTITLE / 'PLEASE COMPLETE LINES 1-9 ABOVE' /
RESET INITIAL #LINE
END-BREAK
/*
WRITE NOTITLE '_' (64) '=' #LINE
ADD 1 TO #LINE
END-FOR
*
END
Ausgabe des Programms PBPEX1S:
________________________________________________________________ #LINE: 1
________________________________________________________________ #LINE: 2
________________________________________________________________ #LINE: 3
________________________________________________________________ #LINE: 4
________________________________________________________________ #LINE: 5
________________________________________________________________ #LINE: 6
________________________________________________________________ #LINE: 7
________________________________________________________________ #LINE: 8
________________________________________________________________ #LINE: 9
PLEASE COMPLETE LINES 1-9 ABOVE
________________________________________________________________ #LINE: 1
________________________________________________________________ #LINE: 2
________________________________________________________________ #LINE: 3
________________________________________________________________ #LINE: 4
________________________________________________________________ #LINE: 5
________________________________________________________________ #LINE: 6
________________________________________________________________ #LINE: 7
________________________________________________________________ #LINE: 8
________________________________________________________________ #LINE: 9
PLEASE COMPLETE LINES 1-9 ABOVE
Äquivalentes Reporting-Mode-Beispiel: PBPEX1R.