SAP NetWeaver AS ABAP Release 752, ©Copyright 2017 SAP AG. Alle Rechte vorbehalten.
ABAP - Schlüsselwortdokumentation → ABAP - Referenz → Daten- und Kommunikationsschnittstellen → RFC - Remote Function Call → CALL FUNCTION - RFC → CALL FUNCTION - DESTINATION →
CALL FUNCTION - DESTINATION parameter_list
Syntax
... [EXPORTING p1 = a1 p2 = a2 ...]
[IMPORTING p1 = a1 p2 = a2 ...]
[TABLES t1 = itab1 t2 = itab2 ...]
[CHANGING p1 = a1 p2 = a2 ...]
[EXCEPTIONS [exc1 = n1 exc2 = n2 ...]
[system_failure = ns [MESSAGE smess]]
[communication_failure = nc [MESSAGE cmess]]
[OTHERS = n_others]].
Zusätze:
1. EXPORTING p1 = a1 p2 = a2 ...
2. IMPORTING p1 = a1 p2 = a2 ...
3. TABLES t1 = itab1 t2 = itab2 ...
4. CHANGING p1 = a1 p2 = a2 ...
5. EXCEPTIONS exc1 = n1 exc2 = n2 ...
Wirkung
Mit diesen Zusätzen werden den Formalparametern des remote aufgerufenen Funktionsbausteins Aktualparameter und nicht-klassenbasierten Ausnahmen Rückgabewerte zugeordnet. Die Zusätze haben im Wesentlichen dieselbe Bedeutung wie beim generellen Funktionsbausteinaufruf.
Beim RFC gilt jedoch im Unterschied zum generellen Funktionsbausteinaufruf:
Im Folgenden sind noch einige spezifische Unterschiede für die einzelnen Zusätze beschrieben.
Hinweise
EXPORTING p1 = a1 p2 = a2 ...
IMPORTING p1 = a1 p2 = a2 ...
Wirkung
Bezüglich der Zusätze EXPORTING und IMPORTING gelten folgende Unterschiede:
TABLES t1 = itab1 t2 = itab2 ...
Wirkung
Bei TABLES zur Übergabe an Tabellenparameter gibt es den Unterschied, dass nur Tabellen mit flachen Zeilentypen und ohne sekundäre Tabellenschlüssel übergeben werden können und dass eine eventuell vorhandene Kopfzeile nicht übergeben wird.
Hinweise
CHANGING p1 = a1 p2 = a2 ...
Wirkung
Bezüglich des Zusatzes CHANGING gelten die gleichen Unterschiede wie bei den Zusätzen EXPORTING und IMPORTING.
EXCEPTIONS exc1 = n1 exc2 = n2 ...
Wirkung
Über den Zusatz EXCEPTIONS wird die klassische, nicht-klassenbasierte Ausnahmebehandlung durchgeführt, die im Wesentlichen wie beim generellen Funktionsbausteinaufruf funktioniert, wobei hier zusätzlich die speziellen Ausnahmen SYSTEM_FAILURE und COMMUNICATION_FAILURE angegeben werden können, um die Ausnahmen zu behandeln, die von der RFC-Schnittstelle selbst ausgelöst werden. Hinter der Angabe dieser Ausnahmen kann zusätzlich ein optionaler Zusatz MESSAGE angegeben werden. Tritt eine der speziellen klassischen Ausnahmen system_failure oder communication_failure auf, wird die erste Zeile des zugehörigen Kurzdumps in das Feld smess bzw. cmess gestellt, das flach und zeichenartig sein muss. Wenn ein remote aufgerufener Funktionsbaustein während der nicht-klassenbasierten Ausnahmebehandlung eine klassenbasierte Ausnahme auslöst, wird diese nicht transportiert, sondern führt zur vordefinierten klassischen Ausnahme SYSTEM_FAILURE.
Hinweise
Ausführbare Beispiele