1:N mapping idoc to soap

Hi,
We are planing to implement idoc to soap scenario , which is  based on BOMMAT idoc filed value  to two soap receiver.
if STLAN=1 send idoc data to soap 1 and if STLAN=3 then send idoc data to soap 2.
So i understant i have to use Correlation using BPM.
Please descibe the step to achive this.
Thanks
Laxmi Bhushan Jha

Hi Laxmi,
>>If Receiver Business Systems are same for both the SOAP 1 and SOAP 2, you need not set the condition in Receiver Determination.You have to give the condition in the Interface Determination instead.
For eg. Suppose you have Inbound Service Intefaces named  SI_SOAP1 and SI_SOAP2 for SOAP1 and SOAP2 respectively.
Then in Interface Determination, set the condition as:
if STLAN=1 send idoc data to SI_SOAP1 else if STLAN=3 then send idoc data to SI_SOAP2.
If receiver Business Systems are different for SOAP1 and SOAP only then you will have to set the Condition in Receiver Determination.
Fo eg. Supppose You have: For SOAP1-Business System is B1, and for SOAP2--Business System is B2.
Then in receiver determination, set the condition as:
if STLAN=1 send idoc data to B1 else if STLAN=3 then send idoc data to B2.
>>You will be having 2 Operation mappings with two Inbound Service Interfaces. 
>>Now you will have 2 Receiver Agreements for the 2 SOAP communication channels with respective Inbound Service Interfaces.
THANKS
BISWAJIT
Edited by: 007biswa on Feb 11, 2011 10:01 AM
Edited by: 007biswa on Feb 11, 2011 10:08 AM

Similar Messages

  • Idoc to soap sync without bpm. is it possible? Helping me..

    Hi Experts,
    i have a small clarification Idoc to soap sync interface in sap pi 7.0. i created IDoc to Soap sync using BPM but some times the signals are stuck due to load issue in swpr, while reprocess those signals all going successfully to the receiver. So We are trying to eliminate BPM.
    I just wanted to know Idoc to Soap sync scenario without BPM is possible or not in SAP PI 7.0?
    if it is possible kindly send me the links
    Regards,
    Kiran polani

    Hi Kiran,
    Could you please let us know the exact requirement. How do you want to send the response back to IDOC?
    ASync - Sync Bridge with IDOC sender is not possible in PI 7.0.
    If It is something like IDOC --> SOAP --> IDOC , And If the SOAP request is small then you can use SOAP Lookup in IDOC to IDOC Scenario.
    In The mapping You can do a lookup and get the response from SOAP(Webservice) and map that to your Target IDOC.
    This is one possible way for you without BPM in PI7.0.
    Please let me know if you need more details about this.
    Thanks
    Jyothi A

  • IDoc - XI - SOAP - XI - Mail

    Hi all,
    I want to do the following scenario:
    IDoc is sent to XI, Xi is doing a Soap call with information from the Idoc, from the soap call I receive a response code. This response code will be sent by mail TOGETHER with info from the Idoc.
    I've made the scenario from Idoc to Soap call. I also know how to sent information out with the mail adapter.
    Where the problem is for me, is the combination of this all together.
    I guess I have to use BPM for this?
    Can anyone point me into the right directions for this problem?
    Thinks like wich message types, interface mappings etc?
    Thnx in advance!

    I guess I have to use BPM for this?
    Not necessary.
    U may perform a Idoc - Xi - Mail scenario with Soap lookup in mapping
    Webservice Calls From a User Defined Function.
    Regards,
    Prateek

  • IDOC -XI-SOAP one sender different  receivers based on condition

    Hi All,
    I have an IDOC to SOAP scenario.
    For each record based on the input flag XI has to send the  any one of the request ...like either create or update or delete request. All these message types are a part of single WSDL.
    How can i do it?
    Thanks in Advance
    Jyothsna

    hi There are two ways you can do this:
    1. Without BPM - Since you have to create all the target messages adn you want either the 1st and second, or the first and third: create two multi-mapping with one and two, and one and three. In the receiver determination check the condtion based on which you decide the second or the third message has to be created and route it to the correct mapping accordingly.
    2. with BPM, create all the target mapping. In the BPM check the condtion in the switch and do a send accordingly.
    You can do this either on Receievr Determination or on Interface Determination.
    Add multiple Receievrs/ Interfaces and then add the conditons on which the target should be choosen
    to use Xpath for your receiver det. ref these blogs;
    a combination of logics should help you in this case ...
    /people/shabarish.vijayakumar/blog/2006/06/07/customise-your-xpath-expressions-in-receiver-determination
    /people/shabarish.vijayakumar/blog/2005/08/03/xpath-to-show-the-path-multiple-receivers
    pls reward points if solution found helpfull
    regards
    chandra.k

  • IDOC---XI----SOAP(Webservice) Sync

    Experts,
    Need to Develop IDOC-XI--SOAP(Webservice) Sync Communication Interface
    I have  importing the Standard Idoc & External Def  for WSDL ,which has the Request & Response Structure.
    I need to handle the SYNC message in the XI  and ignore it/ do not pass to the source system.
    Any Weblog will help ,
    Thnaks
    Edward

    Hi Edward,
    Follow the steps given below
    In IR create following objects:
    1: Import Web Service definition file in External Definition.
    2: Import IDoc ZDLVRY. (I have used custom IDoc)
    3: Create Message Interface
         a. Abstract Synchronous for sender
         b. Abstract Synchronous for Receiver
         c. Abstract Asynchronous for request
         d. Abstract Asynchronous for response
    4. Create Message Mapping for Source Request to Target Request
    5. Create Message Mapping for Target Response to Source Response.
    6. Create Interface mapping and specify proper input in request and response tab.
    7. Create Integration Process
    Configuration in ID:
    1. Create Integration Process for BPM created in IR.
    2. Create receiver determination
        a. From SAP R/3 to Integration Process
        b. From Integration Process to Third Party (Web Service)
        c. From Integration Process to SAP R/3
    3. Create Interface Determination
        a. From SAP R/3 to Integration Process
        b. From Integration Process to Third Party (Web Service)
        c. From Integration Process to SAP R/3
    4. Create Receiver Agreement
    5. Create Communication channel for Soap Receiver and IDoc Receiver.
    6. Create Receiver Agreement for Soap Receiver
    7. Create Receiver Agreement for IDoc Receiver
    if u have any doubt in any step please let me know
    Regards,
    Manisha

  • IDoc to SOAP scenario is showing error

    Dear Experts,
    We were trying a scenario which is IDoc-XI 3.0->SOAP and where the WebService is situated outside our office network. Our network team have bypassed proxy for accessing that WebService URL and the same is accessible from our XI3.0 application server from browser. We have configured the scenario and when we have tested the scenario from RWB->Component M onitoring->Integration Engine->Test and this has worked fine. But when we have tested the scenario by triggering IDoc from the R/3 system, it is throwing the below mentioned error in both at the comm chanel and at the SXMB_MONI acknowledgement.
    Message processing failed. Cause: com.sap.aii.af.ra.ms.api.RecoverableException: SOAP: response message contains an error XIAdapter/HTTP/ADAPTER.HTTP_EXCEPTION - HTTP 403 Service Error
    points to be noted here:
    1. Business Service has been configured correctly for triggering ALEAUD messages and ALEAUD messages are reaching R/3 successfully.
    2. We have chosen option Keep Headers and Do not use SOAP header options.
    3. We are passing some values to the SOAP Header from SOAP channel.
    Please could somebody help us on the root cause of the error message.
    We have run report IDX_NOALE for that particular IDoc so that it doesn't return any acknowledgement back to the R/3 system.
    Thanks and regards,
    Sugata
    Edited by: Sugata Basu on Nov 19, 2011 12:40 PM

    Dear,
    IDoc to Soap scenario we have to import wsdl at receiver end and map the field from the mapping document but some times receiver end some changes may happen. if it is correct only your mapping we have to conclude from the below points.
    1. Check the mapping in Message Mapping and Operation Mapping Test and conclude.
    2. you should check url from receiver that is correct or wrong.
    3. ask the wsdl from receiver end.
    the given ED and receiver side application is same this type of error will not come.
    Please check at receiver application or else what ever new fields are added in reciver may be miss mach of ED.
    Regards,
    Kiran Polani

  • IDOC to SOAP scenario and transport process

    Scenario:-IDOC to SOAP:
    We got the WSDl file from Target system and our current scenario is working perfectly fine in Dev.
    Requirement:
    I have to send the same IDOC to two different SOAP target system with different SOAP URL WSDL structure is same only the URl differ.
    Solutions which I thought of:
    1) Separate Design for both the scenarios in IR and one CS with two SOAP channel, interface and receiver determination and agreement.
    2) Use the same WSDL file structure for both the case. this will avoid the separate IR configuration. in this case there will be common MM,IM. In ID the configuration will remain the same as the case one.
    In 2 case I would like to know whether I can use the WSDL file which has the details of first SOAP target for the second SOAP target. Will this WSDL file act simply as structure? Does the URL mentioned in the WSDL file will create any problem?
    Transport process:
    SOAP WSDL file has different URL for DEV,QA and PROD. when I transport the IR from Dev to QA the Dev WSDl file will be reflected in QA as external definition, I wanted to know what is the best method to do the transport in the above situation.
    Solution which I thought of
    1) Go to QA IR and import the QA WSDL file.
    2) Go to Dev and import the WSDl file of QA and import it in QA which avoids manual import in QA, if I go by this way will this affect the testing of my interfaces in Dev system.
    What is the best method we do the transport for the above scenario.
    Need ur suggestions?
    chirag
    Edited by: Chirag Gohil on Oct 1, 2008 1:29 PM

    Hi Chirag,
    As far as i know there wil not be any target URL in the WSDL File which we bought from the webservice application.
    Can u please paste the WSDL File which u have .....
    If we come to Dynamic URL Config means, as per my concern
    You have only 2 Target locations to receive the Idoc. so its better to go a head with ur existing approch itself.
    Why becase for Dynamic URL Config.....
    we have to maintain the target URL's in One Table and need to use RFC lookup to pick this URL Dynamically based on some value from the Input file.
    And also we need to use Standard  UDF code for Dynamic config in Mapping .
    And need to check the option Use ASMA in the Receiver SOAP CC.
    Regards
    Seshagiri

  • Idoc to soap scenario - soap response error

    hi
    i am using pi 731 single stack.
    the scenario is idoc to soap. the message mapping is working fine and output is generated successfully.
    the message is failing in mesage monitor and communication channel monitor. error is -
    Exception caught by adapter framework: SOAP: Response message contains an errorXIAdapter/PARSING/ADAPTER.SOAP_EXCEPTION - soap fault: VEN-OMI-1007:
    This scenario is async scenario. How to soap remove this response message error.
    rgds

    Dear,
    IDoc to Soap scenario we have to import wsdl at receiver end and map the field from the mapping document but some times receiver end some changes may happen. if it is correct only your mapping we have to conclude from the below points.
    1. Check the mapping in Message Mapping and Operation Mapping Test and conclude.
    2. you should check url from receiver that is correct or wrong.
    3. ask the wsdl from receiver end.
    the given ED and receiver side application is same this type of error will not come.
    Please check at receiver application or else what ever new fields are added in reciver may be miss mach of ED.
    Regards,
    Kiran Polani

  • Question: User defined acknowledgement (IDOC to SOAP)

    Hello friends,
    A very happy new year to all of you!
    The flow im working on is like this -
    R/3 -> Idoc -> XI -> SOAP adapter -> webservices
    I have a requirement of sending an acknowledgement back from XI. But the problem is the acknowledgement has to be of  a structure that is specified by the client. I will have to send this acknowledgement through RFC to R/3 where they will update.
    q1. Can i access the information about the idoc, like if it has failed in sender channel,or IR or at the mapping etc. They want these info codified into something like 101,102 103 etc with each having  specific meanings in terms of Idoc status.
    q2. Are these information stored somewhere so that i can access them and map it to the acknowledgement structure?
    q3. what are the steps for achieving this?
    Looking forward to your help .... Thanks in advance!
    Regards,
    Lakshmi

    Hi,
    As suggested by Swarup, "you can go for Fault message type and have the customized structure to give the details."
    In addition, I would suggest to use FixedValue Table in mapping to maintain your entries (101,102, etc) and their respective meanings or you can use Value Mapping (maintain your entries in Integration Directory. For more info search SDN).
    Regards,
    Sarvesh

  • Receiving IDOC through SOAP

    Hello everyone,
    Being new to XI, i'm still trying to process this brave new world. I've read and developed some simple scenarios using webservices. The last one i did was in a company A that needed to send ORDERS05 Idocs to company B. The latest provided a wsdl file used to create an external definition of the order document being sent. mapping is direct between all fields.
    Now, Company B needs me to setup things here, and receive the IDOC sent from company A (message monitoring states that all messages from there are sent with success, but still missing the part i just described).
    What is the best way to achieve this? can anyone point me to a document i could read on the subject (IDOC->IDOC with SOAP).
                                         Thank you in advance

    I'll try and explain the best i can:
    In company B, i have two SWC:
    COMPANYA - Represents the company that sent the IDOC ORDERS05 via webservice.
    PI_COMPANYB - Represents the company where i stand fisically, where the IDOC must arrive and be integrated into SAP R3.
    Here in company B i have created:
    - edORDERS05 - An external definition, on a namespace dependent of COMPANYA, importing a xsd file ORDERS05.
    - miOrdersDocuments - A message interface, of type edORDERS05.
    In Integration Directory i have:
    - COMPA - Party representing Company A
    - COMPAPI - Business Service of COMPA with channel SOAP_Receiver_OrderRequest.
    - SOAP_Receiver_OrderRequest - channel of communication to receive the webservice arriving from Company A, with URL like this:
    http://65.222.222.222:50000/XISOAPAdapter/MessageServlet?channel=COMPB:COMPBPI:SOAP_Sender_OrdersRequests&version=3.0&Sender.Party=http%3A%2F%2Fsap.com%2Fxi%2FXI%3AXIParty%3ACOMPB&Sender.Service=COMPBPI&Interface=http%3A%2F%2FcompanyA.com%2FOrdersRequests%5EmiSalesDocumentsReq
    The URL was snipped from "Location" tag in wsdl webservice previously created in Company B, using the "Tools->Define Webservice" from Integration Repository.
    Right now the idoc is being sent successfully from SAP R3 to XI Engine in Company A, and then sent to Company B where the message should be arriving (logs in proxy at the company say so), but when arriving at XI Engine of company B, nothing appears on sxmb_moni transaction.
    Hope i explained everything as asked.

  • SOAP Receiver/Sender in IDOC- XI- SOAP receivers?

    hi,
    i have idoc-> xi-> soap receiver.
    1. How can i get a response back from soap receiver?
    2. in the above scenario is SOAP the receiver or agian the sender?
    3. not sure how i can get a response back from the soap receiver?
    any tips would be helpful.
    thanks,
    tirumal

    Hi,
    It should be
    <i>
    Under Target URL, enter the complete address (URL) of the Web service provider that you want to send the message to.</i>
    http://help.sap.com/saphelp_nw04/helpdata/en/29/5bd93f130f9215e10000000a155106/content.htm
    What are you specifying?
    Can you give the entry in Target URL...
    Regards
    Suraj
    Message was edited by: S.R.Suraj

  • How to XI error message will mapped to the SOAP faul message-SOAP(Axis)

    Hi,
      Receiver end I am using SOAP (Axis) adapter and I am getting the system error and I am not getting the payload in SXMB_MONI.
    What ever the error message how do MAP as a SOAP Fault message in SXMB_MONI.
    I found the Solution from OSS note 1039369 but did not explain where to set what parameter and what modules...
    SOAP Fault code
    If parameter Category is XIAdaptger, Area SOAP, Code FAULT
    In this case, parameters P1 and P2 may be set to the fault namespace and fault name. If these parameters are set, the SOAP fault code is set to namespace P1 and name P2. Otherwise, it is set as in other cases.
    For all other cases
    In this case, the SOAP fault code is set to namespace "http://sap.com/xi/XI/Message/30" and name category.area.code, where category, area, code represent the XI error category, area, and code values, respectively.
    SOAP detail
    If parameter ApplicationFault is set
    The SOAP detail child is set to the XI application payload. If, however, the payload extraction mode is set to Envelope, the application payload is taken as the SOAP envelope and the SOAP detail content is set to its body content. Similarly, if the extraction mode is set to Body, the application payload is taken as the SOAP body and the SOAP detail content is set to its content.
    Otherwise
    No SOAP detail content is set in this case.
    Examples
      XI error element
    <sap:Error ...>
      <sap:Category>XIAdapterFramework</sap:Category>
      <sap:Code area="MESSAGE">GENERAL</sap:Code>
      <sap:AdditionalText>Failed to determine a receiver agreement for the given message.</sap:AdditionalText>
    </sap:Error>
    SOAP fault element
    <soapenv:Fault>
      <faultcode xmlns:ns1="http://sap.com/xi/XI/Message/30">ns1:XIAdapterFramework.MESSAGE.GENERAL</faultcode>
      <faultstring>Failed to determine a receiver agreement for the given message.</faultstring>
      <detail/>
    </soapenv:Fault>
    Help appriciated
    Regards,
    Venu.
    Edited by: Venugopalarao Immadisetty on Sep 24, 2009 3:39 PM

    Using Receiver SOAP Axis adapter and I am getting the below exception
    XI error element
    <sap:Error ...>
    <sap:Category>XIAdapterFramework</sap:Category>
    <sap:Code area="MESSAGE">GENERAL</sap:Code>
    <sap:AdditionalText>Failed to determine a receiver agreement for the given message.</sap:AdditionalText>
    </sap:Error>
    and above exception how do I convert as a SOAP Fault message..
    SOAP fault element
    <soapenv:Fault>
    <faultcode xmlns:ns1="http://sap.com/xi/XI/Message/30">ns1:XIAdapterFramework.MESSAGE.GENERAL</faultcode>
    <faultstring>Failed to determine a receiver agreement for the given message.</faultstring>
    <detail/>
    </soapenv:Fault>
    Any idea what modules need to add in Receiver SOAP Axis adapter.

  • Error in IDOC to SOAP

    I am doing IDOC to SOAP(3rd party) scenario and I get this error
      <?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
    - <!--  Call Adapter
      -->
    - <SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="">
      <SAP:Category>XIAdapter</SAP:Category>
      <SAP:Code area="IDOC_ADAPTER">ATTRIBUTE_INV_SND_SERV</SAP:Code>
      <SAP:P1 />
      <SAP:P2 />
      <SAP:P3 />
      <SAP:P4 />
      <SAP:AdditionalText />
      <SAP:ApplicationFaultMessage namespace="" />
      <SAP:Stack>Unable to convert sender service to an ALE logical system</SAP:Stack>
      <SAP:Retry>M</SAP:Retry>
      </SAP:Error>
    I have searched the forums and there is lot of info on this,
    According to this blog
    /people/michal.krawczyk2/blog/2005/03/29/xi-error--unable-to-convert-the-sender-service-to-an-ale-logical-system
    He says Click on the Business System and see the adapter specific Identifiers,So do I have to click on my 3rd pary Business System here? since for IDOC sender there will be no BS.Am I correct.
    Thanks

    Hi  Guest
    first login to SDN with good name
    This problem occurs due to  INVALID SENDER SERVICE
    kindly check in your configuration whether you have given a valid name to your sender service and also check the conditions in RCVR deetermination
    if not modify that and activate again .Make a CACHE refresh
    hope this will work for you
    Regards
    sandeep
    PS if helpful kindly reward good points

  • IDOC to SOAP asynchronous scenario Error handling

    Need an expert!!!!!!!!! advise on  error handling for IDOC--PI--
    SOAP scenario.This is a asynchronous scenario where PI is calling a Legacy system using SOAP adapter.My question is how i can do error handling in this scenario.If i get an alert in pi with payload variable that would be fine, do i need to use BPM and if that is tthe case what will be steps.
    Appreciate your help.
    Manish

    Hello Manish,
    My question is how i can do error handling in this scenario.
    Use the standard alert framework. Search on SDN / SAP Help for details.
    do i need to use BPM and if that is tthe case what will be steps.
    BPM is not required to raise alerts, as this is an async call.
    Regards,
    Neetesh

  • IDOC to SOAP

    Dear All,
         My scenario is  IDOC to SOAP(Asynchronous) .
    In MONI ,I am able to see the succesful message but  in  receiver  communication channel, I am getting the following below error,
    SOAP:call failed:java.net.ConnectException:Connectiontimedout:
    Please suggest me on this.
    Regards,
    Lavanya B.

    Hi Lavanya,
    Its very hard to tell exactly where it is going wrong. Some issues are already mentioned by prateek. Apart from it you can take the receiver payload and see whether it is the same as expected by the webservice or not. If possible try to load this payload manually so that if any issues are there you may come to know.
    Regards,
    ---Satish

Maybe you are looking for