We are transferring the data from one SAP system to other
SAP system using BGRFC units. We have done the below steps:
- Created a BGRFC Supervisor destination in t-code
SBGRFCCONF.
- In supervisor destination provided the sap user
with the required authorizations Role : SAP_BC_BGRFC_SUPERVISOR, S_rfc
authority object with activity "Execute" and the name of rfc to be
protected are (BGRFC_SUPERVISOR and SYST) (At present this user has SAP_ALL
authorization)
- Created one TCP/IP type destination for connecting
the third party to SAP system with BGRFC as data transfer mode.
- Successfully able to make the connection.
- Written the below code to send the data through
BGRFC units using TRFC mode DATA: my_destination TYPE REF TO if_bgrfc_destination_outbound,
my_unit TYPE REF TO if_trfc_unit_outbound,
dest_name TYPE bgrfc_dest_name_outbound.
dest_name = 'BGRFC_B3'.
my_destination = cl_bgrfc_destination_outbound=>create( dest_name ).
my_unit = my_destination->create_trfc_unit( ).
CALL FUNCTION 'ZZ_DS_ABAP_TRANS' IN BACKGROUND UNIT my_unit tables ETLSTRSF = elt .
COMMIT WORK - After execution of above code, we are able to
generate BGRFC units. But when we checked in SBGRFCMON t-code , these units are
present in failed state with the below error: “RFC task 0000000001 is already being used
for destination TDCVM24S04_EC7_00.”
Note : Both SAP systems are equal to or above SAP_BASIS
level 731.