Get Example source ABAP code based on a different SAP table
ID CALL-FUNCTION-IN-BG-UNIT • IN BACKGROUND UNIT CALL FUNCTION
CALL FUNCTION IN BACKGROUND UNIT> Short Reference >
ABAP_SYNTAX CALL FUNCTION func IN BACKGROUND UNIT oref> parameter_list>.>
What does it do? Background Remote Function Call (bgRFC) of a remote-enabled function module> specified in func> using the RFC interface>. Here, oref> is an object reference variable> that must point to an object whose class implements the interface IF_BGRFC_UNIT>>. The object contains all the information required for the Remote Function Call, including the destination, whether to execute a transactional or queued call and, if required, the quantity of queues. If the same object is used for multiple calls, all called function modules are executed in one unit. Conversely, multiple objects of this type can be used in parallel in one ABAP_ISESS >, which enables parallel processing. Parallel processing is executed if queues or destinations in the used objects have different names. If, in consecutive calls, different objects are used for which the same queues and destinations are specified, they are executed in the same queue one after the other.
Latest notes: Background> RFC (bgRFC) 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> For more information about bgRFC, see the documentation RFC> in SAP Help Portal. ABAP_HINT_END
Latest notes:
Before the introduction of bgRFC, the parallel processing of multiple function modules was only possible using the addition AS SEPARATE UNIT> of the statement CALL FUNCTION IN BACKGROUND TASK>>. This same functionality is provided by the parallel use of multiple objects, which means this addition is no longer necessary.
If, within the same SAP LUW, bgRFC units and updates> are executed, the bgRFC units are dependent on the update. Only after the update has been processed can the associated bgRFC be started. When an incorrect update record is deleted, the bgRFC units linked to it are also deleted. The bgRFC can be decoupled from the update using the interface method IF_BGRFC_UNIT~SEPARATE_FROM_UPDATE_TASK> of the bgRFC object.
bgRFCs> registered in a dialog module> that are not started there with COMMIT WORK> are not started by a COMMIT WORK> statement executed by the caller of the dialog module either.
The statements COMMIT WORK>> and ROLLBACK WORK>> must not be executed within a unit. In addition, no implicit database commit> can be triggered there. ABAP_HINT_END