cancel
Showing results for 
Search instead for 
Did you mean: 

solution for IDOC 2 webservices?

Former Member
0 Kudos

Hi Experts in XI,

I am just starting some work in XI today. I need to design a solution.

I have send a purchase order(PO) IDOC when its triggered by the end-user from R/3 and it should be received by another business system using WebServices. When the IDOC is posted we have to receive the acknowledgement. Once the IDOC is send the business sends the sales order information and once its sends the information we have to trigger an Idoc to the sender from XI.

This is the basic requirement.

Can anyone help me in finding a solution.

I thought of using Wrapper RFC instead of using an IDOC while sending, but in response how can

I trigger the IDOC to the R/3?

Thanks in advance.

Accepted Solutions (1)

Accepted Solutions (1)

justin_santhanam
Active Contributor
0 Kudos

Glen,

Please correct me if I understood ur reqmt wrongly!

Basically you are sending IDOC from R/3 to XI. Now XI has to send this to Webservice and get back the response. With the Response, you need to Post IDOC to R/3. Am I correct?

R/3-->XI>Webservice>XI--->R/3

raj.

Former Member
0 Kudos

HI Raj,

Thanks for your response.

What you have understood is correct, but while mapping the IDOC to SOAP(Web services) there are some fields in another sales order record in R/3. How do i get that record details and one more thing is when i send the IDOC to xi the Purchase order status should be updated. Can I ask ABAPer to write BAPIS fr this. Can I trigger this BAPIs from XI?

justin_santhanam
Active Contributor
0 Kudos

Glen,

Yes u can trigger BAPI frm R/3. Since you said u need to send PO+Sales order data , I would say u can create BAPI and send it to XI. Also when the Purchase order status must be updated? When the data posted to Webservice or once we get the response from Webservice? Are u going to call Webservice Synchronously?

raj.

Former Member
0 Kudos

Raj,

we have to update the purchase order status 3 times,

once the idoc sent to XI,

then again when we get Acknowledgment

and at last when we get salesorder info. from the receiver(SOAP).

I have to do mapping from IDOC to SOAP right?

If yes

then there are some fields in Sales order record which are not in the Purchase order(IDOC) which is in R/3 , How to get that record into XI so that I can do the mapping ?

Can we use a BAPI so that it will get that sales order record and we can call that BAPI from XI?

justin_santhanam
Active Contributor
0 Kudos

Glen,

I'm sure u need BPM for this. How many balance fields to be mapped by using sales order create? Let say if it's 1 or 2 u can do lookup from Mapping and fill those fields. If the fields are more then what we can go ahead with the below flow in BPM.

Recieve IDOC -


>Transformation(To call BAPI sales Order)---->Synchronous Send(to get BAPI sales order)->Transformation(Use two messages as source IDOC and Response of Synchronous Send and target as SOAP)->Synchronous Call(to cal webservice)-->Send Asynch to R/3

raj.

Former Member
0 Kudos

Raj,

Thats great, thanks for your fast response. Actually I have to submit a report by today evening.

So the solution u gave will get the reponse from the webservice. Again when we receive the (invoice)response from webservice we have to check for some condition in that invoice and then we have to trigger a Goods received IDoc to the R/3,

then R/3 will trigger another IDOC with the Invoice information from R/3 database. We have to compare both the IDOC got from the R/3 and the Inovice(response) and then if they are ok,

then we have to trigger invoice verification.

So do u think we can do this in XI.

Thanks a lot for your help Raj.

agasthuri_doss
Active Contributor
0 Kudos

Hi,

Adding to Experts Raj Post,

> We have to compare both the IDOC got from the R/3 and the Inovice(response) and then if they are ok,

then we have to trigger invoice verification.

Comprasion should be done in R3 and we can trigger the Message which can Pass thru SAP XI

Regards

Agasthuri Doss

Former Member
0 Kudos

The IDoc we have to compare with the Idoc at R/3 is at XI, how can we compare at R/3?

justin_santhanam
Active Contributor
0 Kudos

Glen,

The flow which I suggested holds good till the point you post Goods Receipt to R/3. But I couldn't understand what's the necessity to compare the IDOC's , could u please explain it?

raj.

Former Member
0 Kudos

The client wants to post Good receipt by checking some conditions, if the condition fails we wont send any good receipt. In both cases we have to wait for the Idoc(some invoice information) that to be triggered from R/3 and then we compare both the idocs and then trigger an invoice confirmed.

(Bit confusing, but its the client requirement)

Former Member
0 Kudos

raj,

Recieve IDOC -


>Transformation(To call BAPI sales Order)---->Synchronous Send(to get BAPI sales order)->Transformation(Use two messages as source IDOC and Response of Synchronous Send and target as SOAP)->Synchronous Call(to cal webservice)-->Send Asynch to R/3

In the above process where we can include another BAPI in order to update the purchase order at R/3 side.?

justin_santhanam
Active Contributor
0 Kudos

Glen,

When u need to call the BAPI, to update? I mean after which step?

raj.

Former Member
0 Kudos

AS soon I receive the IDOC then I have to update,

then when I get Acknowledgment from Webservice then we have to update and finally when we get response then we have to update. So, we have to update 3 times totally.

justin_santhanam
Active Contributor
0 Kudos

Glen,

> AS soon I receive the IDOC then I have to update,

You can keep Send step after Receive IDOC.

> then when I get Acknowledgment from Webservice then we have to update and finally when we get response then we have to update. So, we have to update 3 times totally.

What do u mean by acknowledgement and response. If you call webservice then only response will come back not the Ack! You are considering the Ack as response, if yes then after Synch call to webservice keep the send step.

Glen, I believe i'm taking u in the right track. I also suggest you to wait for other experts opinion on this.

raj.

Former Member
0 Kudos

Receive IDOC -


>Transformation(To call BAPI sales Order)

1) here when I receive the IDOC I have to update the PO status at R/3(can I update that by calling BAPI?)

and reg the ack and response..

2) According to me when the IDOC is posted to webservice(soap), dont we get an acknowledgment saying that msg received and then afterwards webservice(soap) will process the msg and send the response. Is this correct?

Answers (0)