CALL FUNCTION function STARTING NEW TASK task_name
[DESTINATION [dest | IN GROUP [Group_name | DEFAULT ]]]
[PERFORMING subroutine ON END OF TASK ]
[EXPORTING { parameter = value } ]
[TABLES { parameter = itab } ]
[EXCEPTIONS exception = value [MESSAGE field ]].
Der Funktionsbaustein function wird in einem neuen Modus
(gegebenenfalls mit
DESTINATION
auch in einem anderen System dest)
asynchron gestartet. Das rufende Programm setzt seine Arbeit fort,
ohne auf die Beendigung des aufgerufenen Funktionsbausteines zu
warten. Die Rückgabe von Werten und Ausnahmen durch den gerufenen
Funktionsbaustein ist daher nicht über Parameter des Funktionsbausteins
möglich, sondern kann bei Bedarf über ein mit
PERFORMING
benanntes Unterprogramm erfolgen. Eine Ausnahme stellen Fehler
dar, die beim Aufbau der Verbindung zu einem entfernten System
entstehen können. Sie müssen mit
EXCEPTIONS
abgefangen
werden. Mit dem Zusatz
MESSAGE
kann ein Feld benannt werden, in
das beim Auftreten eines Systemfehlers ein erläuternder Text
gestellt wird. Bei dieser Form des Aufrufs müssen alle beteiligten
Systeme mindestens mit Release 3.0 des R/3-Systems arbeiten.
Beim Aufruf mit
DESTINATION
kann zusätzlich mit
IN GROUP
eine Gruppe von Applikationsservern benannt werden, auf denen
der Funktionsbaustein parallel abgearbeitet wird.