Skip to content

ABAP Keyword Documentation →  ABAP − Reference →  Data Interfaces and Communication Interfaces →  RFC - Remote Function Call →  CALL FUNCTION - RFC →  CALL FUNCTION - STARTING NEW TASK →  RECEIVE 

RECEIVE - parameter_list

Quick Reference

Other versions: 7.31 | 7.40 | 7.54


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


These additions are used to pass the specified formal parameters of the function module func specified after RECEIVE to the actual parameter of the callback routine in the calling program. The meaning of the additions is the same as in synchronous RFC. However, values are only applied by actual parameters specified using CHANGING or TABLES and are not passed.

If EXCEPTIONS is specified, class-based exception handling is used. Return codes are assigned to the non-class-based exceptions. The same exceptions can be raised as in synchronous RFC. This means exceptions that are defined in the interface of the function module and the predefined exceptions of the RFC interface. If no exceptions are raised, RECEIVE sets the contents of sy-subrc to 0.


CALL FUNCTION and RECEIVE are currently independent of each other as far as the addition EXCEPTIONS is concerned. This changes when class-based exceptions are introduced. For this reason, it is advisable to use the addition EXCEPTIONS in the same way for CALL FUNCTION and RECEIVE.