Skip to Content
author's profile photo Former Member
Former Member

SOAP to IDOC scenario

Hello All,

I have a scenario where the sender system is outside our landscape and I need to post the PO data to SAP system using XI. I know its a SOAP to IDOC scenario but I am not given a wsdl but am given only a xsd and one XML as input. Can I use this XSD to create a sender message interface or is there any way I can convert the XSD to WSDL? Also, where should I give the path of the XML file in sender SOAP adapter?

And also I have to create a value mapping table where I have almost 4000 entries. Can any one let me know on how to create this?

I have browsed thru the SDN but havent found any information that I am looking for. Can anyone please help me on this.

I will be greatful if anyone can help me with Step by Step to SOAP to IDOC scenario.

Thanks and regards,

Neelima

Add a comment
10|10000 characters needed characters exceeded

Assigned Tags

Related questions

7 Answers

  • Best Answer
    author's profile photo Former Member
    Former Member
    Posted on Oct 08, 2007 at 09:18 AM

    Hi

    Take the xsd and import it under external definitions.

    You will create a Web Service if required in the ID (Tools -> Define Web Service)

    The input xml which has been given to you will be used to do the testing using Altova XML Spy.

    You need not give the path of this xsd anywhere.

    For creating the soap Sender CC, you just need to define name space and the name of a message interface (values can be taken from Integration Repository).

    Thanks

    Add a comment
    10|10000 characters needed characters exceeded

    • Former Member

      I think what is this person asked to do is build an integration scenario using two business system

      1. A business system understand web service technologies and also have a data definition they would like to use to communicate data with their business partner.

      2. A business system which like to accept DATA in the format of IDOC.

      So As long as we use XI as an integration framework, this is called SOAP to IDOC scenario.

      I recomend to use the following steps to implement the integration need.

      1. Understand the XSD data structure from the external service provider.

      2. Using the external data definition create and outbound interface either SYNC or ASYNC format ( You have to discuss this with service provider for confirmation) in XI.

      3. External service provider can use this outbound interface definition and associated data structure to send their data in their provided XML format to XI integration server.

      4. Create an inbound service definition by using the XSD structure created for the IDOC you like to use.

      5. XI integration server can use the inbound interface definition to pass the outbound interface message received once the outbound and inbound interface are connected using a configured scenario.

      6. Using the outbound message type and inbound message type create a message mapping.

      7. Using the message mapping create an interface mapping between outbound and inbound interface.

      8. Create a WSDL from the outbound interface so that the service provider can use the service contract defined by the outbound interface in a web service enabled business system (Note: you have provided the data requirement in XSD format indicate that your business system is web service enabled). Make sure you are not getting fooled by the concept propose URL for the WSDL. You must provide the URL end point in created WSDL according to the following format.

      http://<host>:<j2ee-port>/XISOAPAdapter/MessageServlet?

      channel=<party>:<service>:<channel>

      If the SOAP adapter channel belongs to a service without party, the address is as

      follows:

      http://<host>:<j2ee-port>/XISOAPAdapter/MessageServlet?

      channel=:<service>:<channel>

      9. Provide the WSDL to the service provider, ask them to use that WSDL to send data to your integration framework.

      10. Configure the SOAP adaptor in sender mode, so that it can act as a end point to receive the XML data based on the XSD defined in the WSDL and convert the same to an XI document.

      11. When u define the sender soap adaptor make sure you have selected the namespace and interface name same as the one you created for outbound interface.

      Also recomend to read two How to guide related to web service and soap adaptor to complete your scenario.

      Thanks

  • author's profile photo Former Member
    Former Member
    Posted on Oct 08, 2007 at 09:47 AM

    Hi neelima,

    yes ur scenario is SOAP to IDoc.So for sending the PO data u need WSDL.

    u can create the WSDL.

    Do the following steps

    1. import XSD

    2. Create Message Interface by using the External definition object.

    Now after doing all the step of IR and ID.

    Go to ID->Tool->cretae Webservice.

    remeber the URL format that is needed during the creation of webservice is of the form..

    http://url:port/XISOAPAdapter/MessageServlet?channel=:service:channel

    After creating the WSDL u can send the PO details to Xi using XML spy/SOAPUI....

    check the pdf...here u can get one scenario ...

    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/903a0abc-e56e-2910-51a8-9dc616df56eb

    And for value mapping....check below blogs

    /people/sukumar.natarajan/blog/2006/10/23/accessing-value-mapping-defined-in-directory-using-java-functions

    /people/community.user/blog/2007/01/08/valuemapping-using-the-graphical-mapping-tool

    Value mapping Replication:

    /people/sreekanth.babu2/blog/2005/02/23/value-mapping-replication

    Regards

    BILL

    Add a comment
    10|10000 characters needed characters exceeded

  • Posted on Oct 07, 2007 at 11:58 PM

    Hi,

    This might help you

    /people/siva.maranani/blog/2005/09/03/invoke-webservices-using-sapxi

    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/d23cbe11-0d01-0010-5287-873a22024f79

    Regards

    Agasthuri Doss

    Add a comment
    10|10000 characters needed characters exceeded

  • Posted on Oct 08, 2007 at 12:02 AM

    Hi,

    >>And also I have to create a value mapping table where I have almost 4000 entries.

    4000 entries is more...for value mapping...Is the Data stored in any other database if so why cant you go for look up.

    Value Mapping

    1. Start the value mapping maintenance (Tools --> Value Mapping)

    2. Select Value Mapping Agencies and enter your agencies

    3. Maintain your mapping without the duplicates.

    4. Start the value mapping maintenance again, but this time with the option Value Mapping Group Selected By. You can either use Group Name (if you have maintained groups) or Representation for those values where you need to maintain duplicates.

    Regards

    Agasthuri Doss

    Add a comment
    10|10000 characters needed characters exceeded

  • author's profile photo Former Member
    Former Member
    Posted on Oct 08, 2007 at 12:42 AM

    Hi Neelima,

    > Can I use this XSD to create a sender message interface or is there any way I >can convert the XSD to WSDL?

    You can use given XSD to create Message Type, from this message type create Message Interface.you dont have to convert XSD in to WSDL.

    Do the following steps

    1. import XSD as <b>External Definitions</b> under <b>Interface objects</b> Node.This external definitions acts as <b>Message Type</b>

    2. Create <b>Message Interface</b> by using this <b>Message Type(External definition)</b>

    Please let me know if you want more details regarding this process.

    Cheers,

    Jag

    Add a comment
    10|10000 characters needed characters exceeded

  • Posted on Oct 08, 2007 at 04:52 AM

    <i>I know its a SOAP to IDOC scenario but I am not given a wsdl but am given only a xsd and one XML as input.</i>

    U dont need a wsdl from the client in SOAP to IDOC scenario. U have to create wsdl in XI. Create webservice in XI in Integration Directory. There a wsdl is created and sent to the SOAP sender.

    <i>Can I use this XSD to create a sender message interface or is there any way I can convert the XSD to WSDL?</i>

    U can create ur sender side structure using the xsd u have. As I said no need to convert this xsd into wsdl.

    <i>

    Also, where should I give the path of the XML file in sender SOAP adapter?</i>

    if u r talkin about sending the data, then u need a SOAP clinet tool. U may use Altove or search for it in SDN.

    Regards,

    Prateek

    Add a comment
    10|10000 characters needed characters exceeded

  • author's profile photo Former Member
    Former Member
    Posted on Oct 08, 2007 at 08:24 PM

    Hello All,

    Thank you all for responding to my question and also for giving valuable answers and suggestions. I was able to address the issue.

    Thanks again.

    Regards,

    Neelima

    CSC

    Add a comment
    10|10000 characters needed characters exceeded

Before answering

You should only submit an answer when you are proposing a solution to the poster's problem. If you want the poster to clarify the question or provide more information, please leave a comment instead, requesting additional details. When answering, please include specifics, such as step-by-step instructions, context for the solution, and links to useful resources. Also, please make sure that you answer complies with our Rules of Engagement.
You must be Logged in to submit an answer.

Up to 10 attachments (including images) can be used with a maximum of 1.0 MB each and 10.5 MB total.