ABAP - Schlüsselwortdokumentation →  ABAP - Referenz →  Daten- und Kommunikationsschnittstellen →  RFC - Remote Function Call →  CALL FUNCTION - RFC →  CALL FUNCTION - DESTINATION → 

CALL FUNCTION - DESTINATION parameter_list

Kurzreferenz

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

Zusatz 1

EXPORTING  p1 = a1 p2 = a2 ...

Zusatz 2

IMPORTING  p1 = a1 p2 = a2 ...

Wirkung

Bezüglich der Zusätze EXPORTING und IMPORTING gelten folgende Unterschiede:

Zusatz 3

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

Zusatz 4

CHANGING   p1 = a1 p2 = a2 ...

Wirkung

Bezüglich des Zusatzes CHANGING gelten die gleichen Unterschiede wie bei den Zusätzen EXPORTING und IMPORTING.

Zusatz 5

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