You use the bgRFC monitor to display the recorded units of the bgRFC. A unit consists of one or more function modules that need to be processed as an indivisible unit.
The units are stored on the database until they are processed. You can use the monitor to trace the state of the unit, from when it is first recorded until it has been processed.
The bgRFC monitor is called using the transaction SBGRFCMON.
You require the authorization object S_BGRFC for monitoring or customizing activities.
bgRFC is a functional alternative to tRFC and qRFC. Each application can decide for itself whether it wants to switch its communication from tRFC or qRFC to bgRFC. However, the bgRFC only traces those units recorded for bgRFC.
Units have the following general properties.
Units can be processed transactionally or, additionally, in logical queues. In a queue, units are processed according to the FIFO principle ( first in, first out).
Units can be recorded to transfer them to a remote system. This procedure is known as the outbound procedure. Units can, however, also be recorded to be processed in the current system (that is, to execute recorded function modules). This procedure is known as the inbound procedure and is generally used for load balancing within a system.
Using the bgRFC monitor, you can select units using these properties.
As well as displaying units, the monitor provides you with functions that let you intervene in their processing.
Authorizations protect the use of these intervention functions.
The monitor provides the following functions:
The first function module can be displayed for each unit. This function is only offered to units that were created according to the new procedure.
Destinations and queues can be locked dynamically from the monitor. This function is only intended for analysis and not for regular operations, because it has consequences for runtime. If a queue is to be locked, then the lock refers to the top unit that uses this queue. As soon as the unit lock is removed, the queue is released again.
It is possible to delete units and queues. Unlike the classic procedure, any dependencies are retained by this deletion process, since the units are first flagged and only then deleted by the scheduler.
Deleting a queue or unit is always risky. For more information, see bgRFC Architecture.
The monitor aims to interfere with the actual processing of the units as little as possible. This means you may experience slight delays when you display the status of a unit. For example, units are deleted once they are processed, and cannot be displayed. This deletion actually occurs in the background, which means that individual units may still be visible, despite having already been deleted. You can switch the display to show deleted but not yet executed units (choose Edit -> Show Deleted Units).
Initially, you can restrict your selection using the properties transactional and queued. If you select by transactional units, you can specify additional restrictions under Options for Transactional Units. If you select by queued units, you can specify additional restrictions under Destination/Queue.
You can also restrict your selection to inbound or outbound procedures. If you choose inbound, you display those units whose function modules are to be executed in the local system. If you choose outbound, you display those units that are to be passed from the local system to a remote system (to be executed there).
Under Status of Queues/Units you can restrict the display to queues and units with errors or locked queues and units. If any queues or units have errors, processing is stopped due to an unexpected situation; locked queues or units have been stopped intentionally by the generating application or by the monitor.
The Destination/Queue area of the screen enables you to select particular targets or business processes. This area of the screen changes if you selected Queued under Unit Type.
Under Options for Transactional Units you can select units by their properties. These include: They are: The name of the user under which the unit is recorded. The name of the program or SAP transaction code with which the unit was created. You can also select by time recorded. Note that you need to enter the time recorded as a UTC Time Stamp (YYYYMMDDhhmmssmmmuuun). Use the value help to help you enter the time stamp. You see this section of the screen only if you selected Transactional under Unit Type.
The selection is displayed in a two-part screen. The left half of the screen shows a hierarchy tree. The top level is split into inbound and outbound procedures. Each procedure is divided further according to destination and unit type, transactional or queued. With the queued property, you receive a further level that is split again into the individual queues.
The right half of the screen shows the list of the units that match the item chosen on the left.
You can perform activities for destinations and queues or for individual units.
Activities that refer to the individual units are called in the right half of the screen. The other activities are performed on the left half of the screen. To select the activity, select the row you want and open the context menu (secondary mouse button).
Activities for Units
Lock unit for analysis
Display function module (source code in source system)
Display queues for unit (type Q only)
Display list of function modules (by double-clicking function module)
Activities for Destinations
Maintain destinations (goes to maintenance transactions of the destinations)
Activities for Queues (for Type Q Only)
Create/remove queue locks
Delete queue (deletes all units for the queue)