cancel
Showing results for 
Search instead for 
Did you mean: 

IDOC <-> WS (IDOC)

Former Member
0 Kudos

Hi

I have a question regarding the use of Idocs as web service. The task is to create a web service from an Idoc (easy enough) and call this web service using another Idoc. The problem is that the customer want to have a response back from the Web Service (IDOC). How can I do this? Is it possible?

As both the sender and receiver will be asynchronous (Idocs), it seems to me that the sync-async bridge will not meet my requirements. Is that a correct assumption?

Thanks for all help!

regards Marianne

Accepted Solutions (0)

Answers (2)

Answers (2)

prateek
Active Contributor
0 Kudos

How are you planning to expose idoc as webservice? You may check what response is required by the customer and accordingly create an RFC which populates idoc related data. RFCs has standard procedure of exposing as web service. Once you have both import and export parameter in RFC, the webservice thus created could behave synchronously.

Regards,

Prateek

Former Member
0 Kudos

Hi Marianne,

yes IDOCs are for asynchronous communication......your scenario will be async-async only as the IDOC exposed as webservice will also be asynch.

for your scenario, RFC is more appropriate to get a response back to target application.

Regards,

Rajeev Gupta

Former Member
0 Kudos

Hi

Thanks Rajeev!

What about using the acknowledgement from the web service (Idoc) in a returnmessage? Will this still make the scenario asynchronous, or is it possible to have a synchronous message in the middle of a BPM that is working as a HUB, receiving async messages and sending sync messages? I am not too familiar with BPM's to be sure..

regards Marianne

Former Member
0 Kudos

Hi Marianne,

acklowledgement will only tell whether the IDOC reached the target system........but if you want to know what happened in the posting of that IDOC in the target system, this information will not be available in the standard ALEAUD msg for acknowledgement.............

So you will have to make custom development for response msg and then use BPM for asynch-synch bridge which will make the whole scenario a little cumbersive.

Instead using a standard RFC will reduce your work. So it is better to go for RFCs in your case.

Regards,

Rajeev Gupta

Former Member
0 Kudos

Hi

Prateek and Rajeev: I know I can use an RFC and believe me, if I could decide I would have chosen another approach, but as you may know, it is not always we developers have much to say about "strategic decisions"

I also know that the acknowledgement will not give me the result, but only a confirmation that the message is posted in the receiving system. What I need is some input on how to solve this with a BPM (send posting confirmation back to sender).

What I have is a async receive step -> asynch send step (send to web service).

What it seems that I need: async receive step -> sync send step (to web service, that can produce the return message). How do I solve this with sync-async bridge?

Thanks again!

regards Marianne

Former Member
0 Kudos

Hi,

Okay for asynch-sycnh bridge by BPM, you will have a recieve step to get asynch msg, then a transformation step to map it to webservice req msg, then a synchronous send step to send the req msg to webserive (in this step you will get webservice response msg), then a transformation step to map the webservice response to your req response msg and then a asych send step to send your response back to source system.

Regards,

Rajeev Gupta

Former Member
0 Kudos

Thanks, I'll give you points for that and close this thread and if I have problems developing it I'll start a new one...

M