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

Quick Reference

Other versions: 7.31 | 7.40 | 7.54

Syntax


RECEIVE RESULTS FROM FUNCTION func 
                [KEEPING TASK]
                parameter_list.

Addition

... KEEPING TASK

Effect

This statement must be used in a callback routine specified in an asynchronous RFC to receive output parameters of an asynchronously called function func in the parameter list parameter_list and to handle exceptions.


Notes

  • Callback routines without a RECEIVE statement are possible in the syntax, but are to be avoided and viewed as programming errors. Callback routines without a RECEIVE statement behave implicitly in the same way as when the addition KEEPING TASK is specified for RECEIVE.
  • Before the statement RECEIVE is executed in a callback routine, the current work process is interrupted so that the data can be received. If this has not already been done by another action, such as by using the statement WAIT FOR ASYNCHRONOUS TASKS, the callback routine is executed after an implicit switch of the work process. A database commit is performed, except during the update.

Addition

... KEEPING TASK

Effect

The addition KEEPING TASK retains the asynchronous RFC connection, and therefore also the RFC session of the called function module. When a new call is made with the same task ID, the same global data of the function group is addressed. A destination specified directly using DESTINATION can be specified again, but does not have to be. DESTINATION IN GROUP cannot be used to specify a group if a new call is performed. Without the addition KEEPING TASK, an asynchronous RFC connection is ended after the remote function is executed or after the results are applied.


Note

The addition KEEPING TASK should be used only if the RFC session of the called function module is needed for further function calls.

Continue

RECEIVE - parameter_list