cancel
Showing results for 
Search instead for 
Did you mean: 

IDoc Acknowledgment from R/3 to PI

former_member608231
Discoverer
0 Kudos

We are experiencing a problem in our productive system regarding IDOC

acknowledgments.

The problem is as follows:

The scenario is External system -> SAP PI -> SAP R/3.

We have a bpm that sends asynchronously an IDOC to our R/3 system. In

the bpm we have set the 'Transport' value to the Acknowledgment

attribute of the 'Send' Control. With this we expect the bpm to proceed

to the next step once it has successfully put the message in the queue

of the IDOC adapter.

What really happens is the following: the PI sends the message to R/3,

the IDOC is fully processed on R/3 but the acknowledgment seems to

never arrive. Sometimes it takes over 4 hours ( which is our deadline

branch time out ) for the acknowledgment to arrive. This means that the

bpm is stuck on the Send command for long periods of time, until it

receives the acknowledgment as can continue the processing. Other times

( much fewer times ) the response only takes 1 or 2 minutes.

If we change the Acknowledgment attribute of the 'Send' Control

to 'None' we don't have this problem as the bpm continues its

processing without waiting, but we want to have a confirmation that the

IDOC has been transferred to the R/3 queue.

Note that we didn't put the Acknowledgment attribute to 'Application'

as we don't need to know if the IDOC was successfully processed. We

only want to make sure it's delivered to R/3.

We believe that once the IDOC was saved in PI outbound queue, the bpm

should proceed to next command after the Send command. But this does

not happen. Can you tell us why?

Our IDOC Receiver has the following attributes checked:

. Apply Control Record Values From Payload

. Take Sender to Payload

. Take Receiver from Payload

The following attributes aren't checked:

. Queue processing

. Restore Original Parties for Acknowledgments

Thanks in advance,

Best regards,

Carlos Vaz

Accepted Solutions (0)

Answers (3)

Answers (3)

Former Member
0 Kudos

As your expecting the acknowledgement from R/3 R/3 need to send the same to PI

So you need to check with the R/3 team to schedule the program RBDSTATE...(not remember program name)

so that it will send out ALEAUD to PI...

Rajesh

Edited by: Rajesh on Aug 13, 2009 8:30 PM

former_member608231
Discoverer
0 Kudos

Hello Ravish,

I don't think this kind of acknowledge needs an ALEAUD idoc from SAP to PI.

As i mentioned before, sometimes the acknowledment takes only minutes to return. I've checked in our system and we do have a job which run RBDSTATE on a daily basis ( 1 execution per day ) ... So if I get several answers on each day my guess is that they're not generated by this report.

Thanks,

Carlos Vaz

Former Member
0 Kudos

Try to refresh the SXMB_MONI manually when ever your BPM is waiting for the Acknowledgment . This will refresh the Adapter to get the Acknowledgement back . You can schedule a job for the abap program in your PI System . ( SXMS_REFRESH_ADAPTER_STATUS) . Still Sometimes BPM Hangs and we have raised an OSS Issue 2 days before and we are waiting for response . Will let you know if we hear something from SAP .

former_member608231
Discoverer
0 Kudos

Hello Ravi,

First of all thanks for your answer.

The SEND step may not wait for an acknowledgment, since it is an asynchronous step. If we set the Acknowledgment attribute of the 'Send' Control to 'None' value, the SEND step does not wait for an acknowledge ( as we already tested ). The problem is that we want to make sure the IDOC is sent to the queue and therefore we set the attribute as 'Transport'.

This issue is already at OSS.

Thanks,

Carlos Vaz

former_member181962
Active Contributor
0 Kudos

Hi Carlos,

The SEND step waiting for the acknowledgement , i think, is standard behavior.

The key here is to find why the transport ack is not returning immediately.

You should probably raise an OSS message.

Regards,

Ravi