DO statement
DOEND
|
Dieser Abschnitt behandelt folgende Themen:
Eine Erläuterung der in dem Syntax-Diagramm verwendeten Symbole entnehmen Sie dem Abschnitt Syntax-Symbole.
Gehört zur Funktionsgruppe: Reporting Mode-Statements
Die Statements DO und DOEND werden im Reporting Mode verwendet,
wenn mehrere Statements in Abhängigkeit von einer logischen Bedingung ausgeführt werden
sollen.
Anmerkung
Wenn Sie nur ein einziges Statement angeben, das in Abhängigkeit von einer logischen
Bedingung ausgeführt werden soll, können Sie die Statements DO und
DOEND weglassen. Das ist jedoch nicht im Sinne einer guten Kodierpraxis und
wird nicht empfohlen.
Die Statements DO und DOEND gelten nur im Reporting
Mode.
WRITE TITLE, WRITE TRAILER, und die
Bedingungs-Statements, die mit AT beginnen (AT BREAK, AT END OF
DATA, AT END OF
PAGE, AT START OF
DATA, AT TOP OF
PAGE) dürfen innerhalb einer
DO/DOEND-Konstruktion nicht verwendet werden..
Wenn Sie innerhalb einer DO/DOEND-Konstruktion eine
Verarbeitungsschleife initiieren, müssen Sie sie vor dem DOEND-Statement
wieder schließen.
** Example 'DOEEX1': DO/DOEND
************************************************************************
*
EMP. FIND EMPLOYEES WITH CITY = 'MILWAUKEE'
VEH. FIND VEHICLES WITH PERSONNEL-ID = PERSONNEL-ID
IF NO RECORDS FOUND DO
ESCAPE
DOEND
DISPLAY PERSONNEL-ID (EMP.) NAME (EMP.)
SALARY (EMP.,1)
MAKE (VEH.) MAINT-COST (VEH.,1)
AT END OF DATA DO
WRITE NOTITLE
/ 10X 'AVG SALARY:'
T*SALARY (1) AVER(SALARY (1))
/ 10X 'AVG MAINTENANCE (ZERO VALUES EXCLUDED):'
T*MAINT-COST (1) NAVER(MAINT-COST (1))
DOEND
/*
LOOP
LOOP
END
Ausgabe des Programms DOEEX1:
PERSONNEL NAME ANNUAL MAKE MAINT-COST
ID SALARY
--------- -------------------- ---------- -------------------- ----------
20021100 JONES 31000 GENERAL MOTORS 140
20027800 LAWLER 29000 GENERAL MOTORS 0
20027800 LAWLER 29000 TOYOTA 86
20030600 NORDYKE 47000 FORD 194
AVG SALARY: 35666
AVG MAINTENANCE (ZERO VALUES EXCLUDED): 140