cancel
Showing results for 
Search instead for 
Did you mean: 

Special IDoc-To-IDoc scenario ...

zbynek_kabrt3
Participant
0 Kudos

Hello guys,

could you advice to me how to implement following scenario?

We have system A, SAP XI and system B. A lot of IDocs come from system A to XI and we need to forward them to system B. But system B is not available all the time. I know the XI can re-send the message after system B will be available but we afraid of overloading of system B. Therefore we would like to create new queue especially for messages from system A and schedule some job that would be executed every X minutes and that would take the oldest message from the queue and try to send it to system B.

Is it possible to do it? How can I create new queue for particular messages and how to implement the job?

Thanks in advance for every advice!

Regards,

Zbynek

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Or collect and send them at a specific time from System A.

Use this function Module to route via a specific queue... IDOC_INBOUND_IN_QUEUE

zbynek_kabrt3
Participant
0 Kudos

Unfortunetally I don't know when system B is available and when not. I cann't colect the IDocs in system A because the system is not support that. It's not SAP system.

prasad_ulagappan2
Contributor
0 Kudos

You can try with BPM with some simple receive, send step inbetween you can have wait step to wait for few hours before posting it to the target system.

zbynek_kabrt3
Participant
0 Kudos

I'm afraid it's not solution for me. System A sends messages in regular periods. Each received message would create new process and all the processes would try to re-send message in regular period too. So I thing that all the processes would try to re-send messages in the same time so system B could be overloaded. But maybe I didn't understand you well.

Answers (3)

Answers (3)

Former Member
0 Kudos

Hi

I think you can use BPM and bundle the IDOC to meet the requirement. Now looking at the requirement.

When the system is up you dont have issue to pass IDOC to the system B. fine Now when the system is down using BPM you can wait.

Along with this. You can bundle IDOC coming from the sender system when the system B is down and can send after the wait.

Now bundle of IDOC can be of your choice. You can bundle 10, 20, 100 based on your wait time. Now this bundle can be implemented as a queue. When you pass the bundle of IDOC to a queue say 100 IDOC another queue in previous step can continue to receive in.

Refer

XI: IDOC bundling - the "trick" with the occurance change

Complete reference for IDOC queuing and monitoring

Delivery Modes in BPM.

Thanks

Gaurav

Former Member
0 Kudos

check this link. I don't know if this helps.

t-code: SMQR

prasad_ulagappan2
Contributor
0 Kudos

If you exaclty know when the system B is available you can go for scheduling the adapter based on the available time of the System B.

Even you can go with BPM to wait for few hours before sending it to the target system.

Edited by: Prasad Ulagappan on Oct 29, 2008 11:33 AM