Skip to Content
0
Former Member
Oct 21, 2005 at 10:03 AM

tRFCs from non-SAP client

132 Views

Hi,

I want to call two or more RFCs from some non-SAP client (Java, .NET, whatever) where all the database changes caused by these RFCs should only be committed after I finally send BAPI_TRANSACTION_COMMIT. The Problem I have is that every RFC by itself is automatically committed when the RFC ends. I can't find a way that the automatic commit at the end of some RFC is postponed till the last RFC has been executed.

I tried to execute CALL FUNCTION '...' IN UPDATE TASK several times and then do a commit. This only works when all the calls using CALL FUNCTION '...' IN UPDATE TASK are issued from within the same function. What I need to do is to call the function which executes a single CALL FUNCTION '...' IN UPDATE TASK several times and then do a commit (I can't do any generic transactional programming in my non-SAP client without this).

I wonder whether this can be done at all. That's why I would like to ask some experienced ABAP people before I continue with further investigations that in the end are useless, because it cannot be done.

I'm now looking at tRFCs using CALL... IN BACKGROUND TASK. My hope is that with the use of the TID the SAP system which called RFC belong to the same transaction. Any change to get my problem solved this way?

Thanks, Oliver Plohmann