Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

SAP ABAP Proxy

Former Member
0 Likes
4,983

Hi,

For outbound proxy.

While sending data to PI proxy, I am getting "Message recorded, commit missing" message in SXI_Monitor tcode.

I also tried with Commit Work - It is not sending the data in Payload.

Please help on this issue.

Thanks.

1 ACCEPTED SOLUTION
Read only

rameez_khan
Active Participant
3,961

How are you calling the method ? Let me guess.

Possibility 1: If you are calling method in Program/Class/FM.
In this case where you are calling outbound method which will send data, add a commit work and wait over there.

      "--- Call Commit Work
      CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
        EXPORTING
          wait = abap_true.

Possibility 2: If you are testing your proxy via tcode: SPROXY.
Trigger commit work after your call from Menu "Extras".

Possibility 3: Calling Method in Update Task
If you are calling method in output program or any update task then create an RFC and add code for calling proxy in RFC along with COMMIT WORK AND WAIT and then call the RFC in new task.

Also check queues (SMQ1/SMQ2).

Thanks
Rameez

Hi,

For outbound proxy.

While sending data to PI proxy, I am getting "Message recorded, commit missing" message in SXI_Monitor tcode.

I also tried with Commit Work - It is not sending the data in Payload.

Please help on this issue.

Thanks.

6 REPLIES 6
Read only

rameez_khan
Active Participant
3,962

How are you calling the method ? Let me guess.

Possibility 1: If you are calling method in Program/Class/FM.
In this case where you are calling outbound method which will send data, add a commit work and wait over there.

      "--- Call Commit Work
      CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
        EXPORTING
          wait = abap_true.

Possibility 2: If you are testing your proxy via tcode: SPROXY.
Trigger commit work after your call from Menu "Extras".

Possibility 3: Calling Method in Update Task
If you are calling method in output program or any update task then create an RFC and add code for calling proxy in RFC along with COMMIT WORK AND WAIT and then call the RFC in new task.

Also check queues (SMQ1/SMQ2).

Thanks
Rameez

Read only

0 Likes
3,961

BAPI_TRANSACTION_COMMIT is very specific to BAPIs (to empty BAPI buffers), so it really doesn't make sense to use it with HTTP proxys. Instead, use simply COMMIT WORK (AND WAIT as you suggest, but I don't even know if HTTP proxies really use Update Tasks).

Read only

3,961

Hello Sandra,

Yes Commit Work And Wait should be used.

Regarding HTTP proxies, they don't use update tasks but recently we developed and output program attached to output type.

When this output type was called in "Send Immediately" mode then the output program is called in update task. ( that is what I meant by calling method in output program ).

Since we wanted to call interface in output program we created RFC.

Read only

Former Member
0 Likes
3,961

Thanks for the quick reply. I used BAPI_TRANSACTION_COMMIT and its working.Thank you..

Read only

0 Likes
3,961

Use COMMIT WORK AND WAIT. Sandra has already pointed out BAPI_TRANSACTION_COMMIT won't make sense to use at this place, although will perform the task.

Read only

0 Likes
3,961

Please use the COMMENT button for comments, questions, adding details, etc., ANSWER is only to propose a solution, dixit SAP text at the right of the answer area: "Before answering You should only submit an answer when you are proposing a solution to the poster's problem"