Skip to Content
0

SOAP to IDOC scenario in PI 7.31 ICO (send message id back to SOAP Client)

Oct 13, 2016 at 06:27 PM

333

avatar image

All,

We have a SOAP to IDOC scenario, however the catch is to send the message id back to soap client. Can this be achieved without BPM? We are on PI 7.31 dual stack.

Thanks,

10 |10000 characters needed characters left characters exceeded
* Please Login or Register to Answer, Follow or Comment.

9 Answers

Praveen Gandepalli Oct 13, 2016 at 06:55 PM
0

Hi Ashish,

When do you want to send the message id back to soap client? is your soap client is synchronous? once PI received the request do you want immediately send the response with message id? or you want to send after processing the IDoc in ERP??

Regards,

Praveen.

Share
10 |10000 characters needed characters left characters exceeded
Ashish Goyal Oct 13, 2016 at 07:29 PM
0

Immediately

Share
10 |10000 characters needed characters left characters exceeded
Ashish Goyal Oct 13, 2016 at 09:25 PM
0

Any suggestions Praveen.

Share
10 |10000 characters needed characters left characters exceeded
Evgeniy Kolmakov Oct 14, 2016 at 01:31 AM
0

Hi Ashish!

You can define container variable for message ID in your BPM and assign context object "MessageId" value for it in the step next to "Receive" step. After that you can create response message with "Transformation" step using that variable as input parameter and close SOAP sync call with this response message. In BPM's further steps you send your data asynchronously to ERP as IDoc message.

Regards, Evgeniy.

Share
10 |10000 characters needed characters left characters exceeded
Ashish Goyal Oct 14, 2016 at 01:18 PM
0

Evgeniy,

My bad, I meant to write without bpm in my original question (now corrected). I do know how to implement the same with BPM. But looking for ideas on how to do it without it.

So far I have created a sender soap and a receiver file (file for just the POC, actual requirement is with IDOC). one inbound and one outbound interface both sync.

However with this the issue is two fold:

1) I get an error in Receiver_FTP_Channel and the file does not get written to the target directory, though I do get a response back in the sender soap channel.

2) The response message I get on the sender soap is the after mapping request message.

Thanks,

Ashish


capture8.jpg (112.3 kB)
capture9.jpg (104.8 kB)
Share
10 |10000 characters needed characters left characters exceeded
Ashish Goyal Oct 16, 2016 at 02:29 PM
0

So now I am trying do the following. One sender soap channels in best effort mode, One receiver idoc channel to post idoc and one receiver file channel just to send the AF_Modules/NotifyResponseBean to the sender soap channel. This channel will be invoked using a udf in the request message that comes in. Looks like in the UDF call I will need to set the correlation ID so that notification bean knows for which message it is sending a response back to waiting soap channel.

Any ideas are welcome.

Share
10 |10000 characters needed characters left characters exceeded
Praveen Gandepalli Oct 16, 2016 at 07:24 PM
0

Hi Ashish,

I have created a blog for this requirement, check the below blog

Send Sync Response Immediately in Sync/Async Bridge

Regards,

Praveen.

Share
10 |10000 characters needed characters left characters exceeded
Ashish Goyal Oct 17, 2016 at 02:19 AM
0

Hey Praveen,

Thanks for your reply. I was able to figure this out today morning and in fact wrote a blog as well. It's in review status right now.

Sync SOAP to Async Target - Send messageID back to source as response message (Without BPM)

I would like to see your solution as well, however the link in your response isn't working.

Thanks,

Ashish

Show 2 Share
10 |10000 characters needed characters left characters exceeded

Hi Ashish,

I also faced the issue with link when i was clicking i directly. If you copy past the link then it will work.

regards,

Harish

0

Hi Ashish,

I have updated the link and it is working, you said your requirement is to send the response immediately before send the message to the receiver, if you want send the response from the receiver with message id then it is standard approach, we can easily achieve this, my blog is to send the response immediately in SOAP sender channel itself before send the message to the receiver.

Regards,

Praveen.

0
PRAVEEN CHAKILAM Oct 17, 2016 at 02:50 PM
0

HI Ashish,

It would be nice if you can share the blog you created once ready. I hope that solution is other than Praveen's blog.

Thank you

Share
10 |10000 characters needed characters left characters exceeded