ABAP Keyword Documentation →  ABAP − Reference →  Data Interfaces and Communication Interfaces →  RFC - Remote Function Call →  CALL FUNCTION - RFC →  CALL FUNCTION - DESTINATION → 

CALL FUNCTION - DESTINATION parameter_list

Short Reference

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]].

Extras:

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 ...

Effect

These additions are used to assign actual parameters to the formal parameters of the remotely called function module, and return values to exceptions that are not class-based. These additions have the same basic meaning as they do in general function module calls.

Unlike general function module calls, however, RFC generally ignores the interface to incorrectly specified formal parameters. These differences and others are described in the following.

Addition 1

EXPORTING p1 = a1 p2 = a2 ...

Addition 2

IMPORTING  p1 = a1 p2 = a2 ...

Effect

The following differences apply to the additions EXPORTING and IMPORTING:

Addition 3

TABLES  t1 = itab1 t2 = itab2 ...

Effect

When using TABLES to pass data to table parameters, the difference is that only tables with flat row types and no secondary table key can be passed, and that an existing header line is not passed.

Notes

Addition 4

CHANGING   p1 = a1 p2 = a2 ...

Effect

With respect to the addition CHANGING, the same differences apply as to the additions EXPORTING and IMPORTING.

Addition 5

EXCEPTIONS exc1 = n1 exc2 = n2 ...

Effect

The addition EXCEPTIONS is used to perform classic non-class-based exception handling, which works in essentially the same way as general function module calls. In addition, however, the special exceptions SYSTEM_FAILURE and COMMUNICATION_FAILURE can be specified to handle the exceptions raised by the RFC interface itself. An optional MESSAGE addition can also be specified after these exceptions. If one of the special classic exceptions system_failure or communication_failure is raised, the first line of the associated short dump is inserted in the smess or cmess field. This field which must be a flat character-like field. If a remotely called function module raises a class-based exception during non-class-based exception handling, this exception is not transported and raises the predefined classic exception SYSTEM_FAILURE instead

Notes

Example

More information: Exception Handling in RFC.