The transactional behavior of tRFC is enhanced by a serialization mechanism with qRFC. This mechanism can be realized using an outbound queue or an outbound and additional inbound queue.
The following programming example shows qRFC communication with an outbound queue (optional parameters are shown with '*'):
qRFC with Outbound Queue
Syntax
REPORT rstrfct0.
...
CALL FUNCTION ‘TRFC_SET_QUEUE_NAME’.
EXPORTING
QNAME = ‘queue1’
* NOSEND = ' '
* TRFC_IF_SYSFAIL = ' '
* CALL_EVENT = ' '
* EXCEPTIONS
* INVALID_QUEUE_NAME = 1
* OTHERS = 2
.
CALL FUNCTION ’rfc_function’
DESTINATION rfcdest
IN BACKGROUND TASK
( AS SEPARATE UNIT )
EXPORTING ...
TABLES ...
...
COMMIT WORK.
You can set the queue name for the outbound queue by calling one of the following function modules:
TRFC_SET_QUEUE_NAME
TRFC_SET_QUEUE_NAME_LIST (for multiple queue assignments for each qRFC call)
TRFC_SET_QUEUE_RECEIVER_LIST (for multiple destinations for each qRFC call)
Call tRFC (CALL FUNCTION... IN BACKGROUND TASK)
At the time of the COMMIT WORK, the qRFC manager creates a counter for the LUW .
Note
Serialization is done by a Queue Identifier. This Queue Identifier is made up of the Client, Queue Name, Destination and Queue Counter parameters.
For detailed information on programming the outbound queue, see: