SAP NetWeaver AS ABAP Release 752, ©Copyright 2017 SAP AG. All rights reserved.ABAP - Keyword Documentation → ABAP - Reference → Obsolete Language Elements → Obsolete Data and Communication Interfaces → Obsolete Transactional RFC →
CALL FUNCTION - IN BACKGROUND TASK
CALL FUNCTION func IN BACKGROUND TASK
[AS SEPARATE UNIT]
Transactional call (tRFC) of a remote-enabled function module specified in func using the RFC interface. Using the addition DESTINATION, a unique destination can be specified in dest. If the destination is not specified, the destination "NONE" is used implicitly. func and dest expect character-like data objects.
The transactional call registers the name of the called function, together with the destination and the actual parameters passed in parameter_list for the current SAP LUW in the database tables ARFCSSTATE and ARFCSDATA of the current AS ABAP under a unique transaction ID (abbreviated as TID, stored in a structure of type ARFCTID from ABAP Dictionary, viewed using transaction SM58). After registration, the calling program is continued after the statement CALL FUNCTION.
When the COMMIT WORK statement is executed, the function modules registered for the current SAP LUW are started in the order in which they were registered. The statement ROLLBACK WORK deletes all previous registrations for the current SAP LUW.
If the specified destination is not available when COMMIT WORK is executed, an executable program called RSARFCSE is started in background processing. By default, this tries to start the function modules registered for a SAP LUW in their destination every 15 minutes and up to 30 times. Changes can be made to these parameters using transaction SM59. If the destination does not become available within the defined time, it is recorded in the database table ARFCSDATA as the entry "CPICERR". By default, this entry in database table ARFCSSTATE is deleted after eight days.
background RFC (bgRFC) executed with the statement CALL FUNCTION IN BACKGROUND UNIT is the enhanced successor technology of transactional RFC (tRFC) and makes this technology obsolete. It is strongly recommended that bgRFC is used instead of tRFC.
More information about tRFC can be found in the RFC documentation on SAP Help Portal.
... AS SEPARATE UNIT
When using the addition AS SEPARATE UNIT, the relevant function module is executed in a separate
RFC session, in which the
global data of the function group is not influenced by previous calls. Each function module that is
registered with the addition AS SEPARATE UNIT is given a separate transaction ID. Without the addition AS SEPARATE UNIT, the usual
description applies to the
RFC session of the called function modules. This means that, when using the same
RFC destination for multiple
calls of function modules belonging to the same function group, the global data of this function group is accessed collectively.