cancel
Showing results for 
Search instead for 
Did you mean: 

SAP HR -->IDOC--> to webservice in SAP PI need help!

Former Member
0 Kudos

Hi guys, I have the following scenario. When I create an employee in HR (Name y birthday) I send with an IDOC with PFAL transaction this information to PI. This information must be "read" by another consultant of a web portal to publish it into the web page. I dont need any request in PI. The page read 1 time a day to serch news.

I guess need a web service but I dont be sure. My actual status is:

In IR:

Message Interface Asynchronous (MI_EMPLOYEE)

Mapping between IDOC ---> MI_EMPLOYEE

Interface Mapping

In ID:

Business service: BS_SOAP_RECEIVER

CC: CC_SOAP_RECEIVER adapter type SOAP Adapter Receiver

Receiver agreement, interface determination and receiver agreement, always the sender is the IDOC and the receiver is BS_SOAP_REECIVER.

Then in tools--> Define Web service I save a WSDL of MI_EMPLOYEE and save at my desktop.

But I dont konw how can be continue....

How do I test this scenario???

Is correct IDOC--->SOAP??? I only want to "publish" the data of an employee in a URL to be "read" by a web page once a day.

Please I hope your suggestions....

Regards!!

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hi,

This is a simple IDoc -> PI -> Web Service scenario.

1. Import IDoc in PI;

2. Ask receiving system to provide the WSDL. Once you have that, import in PI;

3. With IDoc structure and WSDL structure, do the mapping and create other objects in PI;

4. Ask for URL, authentication etc from your receiving partner.

Search on SDN for similar scenario ... this is a simple scenario and tons of documents / posts are there.

Regards,

Neetesh

Answers (2)

Answers (2)

Former Member
0 Kudos

Hi,

Yours is Idoc ---> Webservice scenario. Since your webservice is on receiver side you do not have to create a wsdl in PI for that.When you want to publish a webservice from an XI interface i.e. outbound interface then you need to create a wsdl.

In you r case:

1) Get the wsdl from the portal team and inport it under external definitions,

2) Create a inbound interface for that messages in the wsdl file.

3) Create a message and interface mapping in IR.

ID objects remian the same . You have to specify the webservice url in the CC_SOAP_RECEIVER channel with authentication details.

Regards,

Pragati

former_member200962
Active Contributor
0 Kudos
Then in tools--> Define Web service I save a WSDL of MI_EMPLOYEE and save at my desktop.

This is done when SOAP is on the sending side.....in your case it is on the Receiving side.....so now you have to get a Webservice (WSDL file) from the receiving application and then import it into IR .....develop your Inbound MI with this web-service.

The web-servoce will have an Address section which contains the Target URL....this URL is to be included in the Receiver SOAP channel.

Regards,

Abhishek.

Former Member
0 Kudos

Ok I can see things as they are, my confusion was because I send the data to the portal and I supose my CC had to be sender, but now I can see that the receiver is the Web service and the portal team offers the WSDL file.

But it comes another doubt.....How can I test this Scenario if portal team still not develop anything?? I send my idoc and configure IR and ID with WSDL file (provided by portal team) and receiver SOAP, but how can I see the data was sent??

I send an employee with PFAL transaction but I like to prove the results before tell to portal team that PI configuration is ok and then they can develop your requirements.

Regards,

0 Kudos

First check in the message monitor (SXMB_MONI) to see if the message is successfully processed in Integration Engine.

Then check in the "Message monitoring" of "RWB" to check if the message has reached the adapter engine. It might have failed in adapter engine as the target webservice is not yet ready.

But you can atleast make sure it is getting processed in IE and making to AE.

Former Member
0 Kudos

But I dont have the webservice WSDL ( I already asked) so I don't know the URL neither......I test with a message Interface in target message and a URL "generic". In SXMB_MONI the message is successfully processed, but I'd like test it really online, or with another URL standard, Is possible?

Former Member
0 Kudos

Hi Pablete,

If you dont have the wsdl / webservice then how did you take your target message type and how did you map? If the webservice have given you the wsdl and they are doing their development and if you want to test then you cannot do it until unless they build and deploy the webservice. You need to wait for them to complete. Even if you test it it will be success in sxmb_moni and will fail in receiver communication cahnnel monitoring stating your webservice is down or not available.

If you want to test or look and feel then you can test with the webservice which is active. You can try the blog:

/people/shabarish.vijayakumar/blog/2006/03/23/rfc--xi--webservice--a-complete-walkthrough-part-1

/people/shabarish.vijayakumar/blog/2006/03/28/rfc--xi--webservice--a-complete-walkthrough-part-2

Regards,

---Satish