Show TOC

Manipulating a Background UnitLocate this document in the navigation structure


You can manipulate background units using the following interfaces.


The function offered depends on the type of receiving system (inbound or outbound) and the type of the unit (bgRFC of type q or type t). One special case is an outbound bgRFC unit of type q that is to be written to the inbound queues in the destination system. The signature of the interface IF_QRFC_UNIT_OUTINBOUND is broader.


As well as the methods for the inbound queues, out-in units can also be locked for processing in the destination system. The monitoring functions can be used to remove this lock in the destination system.

Figure 1: Graphic: Methods for Units

The method SEPARATE_FROM_UPDATE_TASK removes the binding between the processing of a unit and the update records. If this method is not called for the corresponding unit, then the processing of the unit depends on the successful processing of the update records of the same application LUW. If this is not required, you have to call this method for every unit.

The processing of a unit can be prevented by setting a lock using the method LOCK. You can delay the processing of a unit using the method DELAY. This is also done by setting a lock. The processing of the unit by the scheduler will only start once all locks have been canceled. Any number of locks per unit is possible. A unit can only be processed once all locks have been deleted. Each lock is represented by a unique lock_id. A method to release or detect all locks on a unit should not be offered. In this way, each user can only release his or her own locks and the runtime behavior of other programs cannot be influenced by the premature release of locks.


The method IS_VALID shows the current status of the unit. A unit is exhausted after the statement COMMIT WORK. The method CREATE_UNIT_BY_PATTERN can be implemented to use a unit again. This creates a new unit that belongs to the same destination and that contains the same queues.


The unit objects are valid within an application LUW, which means they are valid up to the next COMMIT WORK