Ansicht
Dokumentation
ABAPCALL_FUNCTION_GENERAL - CALL FUNCTION GENERAL
SUBST_MERGE_LIST - merge external lists to one complete list with #if... logic for R3up General Data in Customer MasterDiese Dokumentation steht unter dem Copyright der SAP AG.
CALL FUNCTION func
CALL FUNCTION func ${ parameter_list
$| parameter_tables $}.
Wirkung
Diese Anweisung ruft den in func angegebenen Funktionsbaustein auf. Der Bezeichner func muss ein zeichenartiges Datenobjekt sein, das während der Ausführung der Anweisung den Namen eines von der Paketprüfung erlaubten Funktionsbausteins in Großbuchstaben enthält. Jeder Funktionsbaustein eines AS ABAP hat einen eindeutigen Namen, weshalb keine Angabe der Funktionsgruppe notwendig ist. Es können folgende Angaben für func unterschieden werden:
- Literal oder Konstante
- Wenn das Datenobjekt func als Zeichenliteral oder als Konstante angegeben ist, wird es von Werkzeugen wie der erweiterten Programmprüfung oder dem Verwendungsnachweis wie eine statische Angabe ausgewertet.
- Variable
- Wenn das Datenobjekt func als Variable angegeben ist, ist dies eine rein dynamische Angabe und es findet keine statische Auswertung des Inhalts statt.
Bei Ausführung der Anweisung wird func in beiden Fällen erst zur Laufzeit ausgewertet. Insbesondere sind die Typen der Parameter erst zur Laufzeit bekannt. In beiden Fällen führen falsch angegebene Funktionsbausteine oder Parameter nicht zu Syntax- sondern zu Laufzeitfehlern.
Mit den Zusätzen parameter_list oder parameter_tables werden den Formalparametern des Funktionsbausteins entweder statisch oder dynamisch Aktualparameter und nicht-klassenbasierten Ausnahmen Rückgabewerte zugeordnet. Siehe Dynamische Aufrufe.
Hinweis
Da func bei dem Aufruf von Funktionsbausteinen erst zur Laufzeit ausgewertet wird, können, anders als in statischen Methodenaufrufen, keine
schreibbaren Ausdrücke und keine
Inline-Deklarationen aufgerufen werden.
Beispiel
Aufruf der Funktionsbausteine READ_SPFLI_INTO_TABLE und READ_SPFLI_INTO_TABLE_NEW mit Parameterübergabe und Behandlung nicht-klassenbasierter bzw. klassenbasierter Ausnahmen.
Ausnahmen
Behandelbare Ausnahmen
- Siehe Klassenbasierte Ausnahmen in Prozeduren.
Laufzeitfehler: UNCAUGHT_EXCEPTION
- Ursache: Die gerufene Funktion ist zwar bekannt, aber nicht aktiv.
Laufzeitfehler: CALL_FUNCTION_NOT_ACTIVE
- Ursache: Die gerufene Funktion ist unbekannt.
Laufzeitfehler: CALL_FUNCTION_NOT_FOUND
- Ursache: Der Typ des Aktualparameters erfüllt nicht die Anforderungen der Funktionsschnittstelle.
Laufzeitfehler: CALL_FUNCTION_CONFLICT_GEN_TYP
- Ursache: Der Aktualparameter hat nicht die von der Funktion erwartete Länge.
Laufzeitfehler: CALL_FUNCTION_CONFLICT_LENG
- Ursache: Der Aktualparameter hat nicht den von der Funktion erwarteten Typ.
Laufzeitfehler: CALL_FUNCTION_CONFLICT_TYPE
- Ursache: Es dürfen nur Funktionen in der Verbuchung aufgerufen werden, die dafür auch vorgesehen sind.
Laufzeitfehler: CALL_FUNCTION_NO_VB
- Ursache: Ein Aktualparameter erfüllt nicht die Ausrichtungsanforderungen des entsprechenden Formalparameters.
Laufzeitfehler: CALL_FUNCTION_WRONG_ALIGNMENT
- Ursache: Der Aufrufer hat einen Parameter mitgegeben, den die Funktion nicht kennt.
Laufzeitfehler: CALL_FUNCTION_PARM_MISSING
CX_SY_DYN_CALL_PARAM_NOT_FOUND
- Ursache: Der Aufrufer hat einen Parameter mitgegeben, den die Funktion nicht kennt.
Laufzeitfehler: CALL_FUNCTION_PARM_UNKNOWN
rdisp/max_wprun_time - Maximum work process run time rdisp/max_wprun_time - Maximum work process run time
Diese Dokumentation steht unter dem Copyright der SAP AG.
Length: 7040 Date: 20240425 Time: 134332 sap01-206 ( 79 ms )