PERFORM [subroutine | index]
[ (programm) |
IN PROGRAM program |
OF { subroutine_n } |
ON COMMIT ]
[TABLES { itab_n } ]
[USING { parameter_n } ]
[CHANGING { parameter_n } ]
[IF FOUND].
Das angegebene, mit
FORM
definierte Unterprogramm wird aufgerufen.
Mittels der Zusätze
TABLES, USING und
CHANGING werden interne
Tabellen oder Feldparameter als aktuelle Parameter übergeben.
Mittels der Zusätze
(programm) oder
IN PROGRAM
werden Unterprogramme
aus anderen Programmen aufgerufen. Die Übergabe des Programm-
und Unterprogrammnamens kann im Falle von
IN PROGRAM
auch dynamisch
erfolgen. Eventuelle Laufzeitfehler, die entstehen würden,
wenn das aufgerufene externe Unterprogramm nicht verfügbar
ist, werden mit
IF FOUND
unterbunden. Mit OF kann das aufzurufende
Unterprogramm über einen Index angesprochen werden. Die in
Frage kommenden Unterprogrammnamen folgen nach
OF, nach
PERFORM
steht kein Name, sondern ein Datenfeld, das einen gültigen
Index enthalten muß.
Mittels des Zusatzes
ON COMMIT erfolgt die Ausführung des
Unterprogramms erst bei einem
COMMIT WORK.
Eine Parameterübergabe
ist in diesem Fall nicht möglich, die Daten müssen in
programminternen Feldern oder im globalen Memory bis zum Verbuchungszeitpunkt
aufbewahrt werden.