XML mapped to IDoc routed to two different receivers

Hello gurus,
I have an XML document coming into XI which needs to be mapped into an IDOC, then sent to two different systems (not to both of them) based on a value in the XML (the value is actually the SAP partner ID).
Can this be done in BPM? Perhaps using Enhanced Receivers would be a viable solution for this?
Thank you!

have u looked into XPaths ?
Ref:
/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
Here based on a field in your message you can route the message to a receiver.
Also ref: /people/venkataramanan.parameswaran/blog/2006/03/17/illustration-of-enhanced-receiver-determination--sp16 for enhanced recv. det.

Similar Messages

  • Map one source elements to two different target elements

    Hi Gurus,
                In our scenario, we have single source. and we are mapping this single source to two different structures, based on condition in the source records on one field, we are mapping to either X structure or Y structure. in my case i have to generate only one file at a time based on condition.
              If condition is true, i have to mapp it for X structure, if its false i have to mapp it for Y structure. but in my case i getting a blank file for another mapping. i should stop this blank file.
             any suggestions and solutions will be rewarded. this is an urgent issue, please help me.
            Thanks in advance.... 
    Thanks & Regards,
    Anuj..

    I have already used an if-then construct and an enhanced ID.Thanks anyway.
    Let me explain using a source interface (s1) and target interfaces t1 and t2.
    Based on the condition, only one interface(lets say t1) will be selected, target mapping is done for this.
    But the problem is that the other interface (t2) also executes(having only the root node) and the end result is i have two files - one with the mapped payload and another empty one with only the root node.
    My requirement is to remove this empty file at the mapping stage itself , as -
    1) i only need a single file at the receiver.
    2) i do not want an extra payload for every record i send, creating unnecessary load on my IE.
    Also due to performance issues i do not want to move this to a BPM.
    I have attached the o/p screenshot at http://www.flickr.com/photos/14210232@N03/1550768802/
    In window 1 i have the correct output .i.e of the interface t1 which was mapped.
    In window 2 i have the unwanted output. i.e the interface t2 which is creating another file at the receiver.
    <b><b>Ques</b></b>: When using enhanced ID/multi-mapping, under Messages tab, if i set my target message type to 0..1, should it not work? I have tried this but it doesn't.
    Do let me know a way out! Thanks.
    Anuj.

  • Sending Sync Request to two Different Receivers.

    Hi,
    I have a scenario where the synchronous request with single operation has to be sent to two receivers(different systems) with one being async and another one being sync. The response from the second receiver has to be mapped to sender.
    Though this can be acheived with BPM, I am looking for a better solution.
    PI SystemDetails: 7.1EhP1
    Regards,
    Manikandan R

    Hi,
    Can u please specify the sender and receiver communication channels u r using for this scenario??
    It depends upon the adapters u r gng to use in ur interface.... that whether u can also achieve without using the BPM or not
    will be decide..
    So specify the adapters in sender and receiver....
    Babu

  • Using an IDOC sending the same message in two different format

    i have a message which i have to be sending from one SAP system to another, but the message should be split into 2 different formats using mapping and send to one receiver where the 2 messages are segregated using some ID number. here we will be using IDOC for sender.
    kalyan.

    Hi,
    I think you can go for the  multimapping(1:2) and not exactly splitting the message but mapping it one source to two different targets that need to be sent to one receiver...
    Just see these blogs on that..
    /people/jin.shin/blog/2006/02/07/multi-mapping-without-bpm--yes-it146s-possible
    /people/venkataramanan.parameswaran/blog/2006/03/17/illustration-of-enhanced-receiver-determination--sp16
    You need to go for enhanced interface determination.
    Thanks,
    Vijaya.

  • How to route traffic between two different interfaces

    Hi,
    I need to setup a routing between two different interfaces on a host.
    Inferface ce1 : 192.168.120.12
    Inteface ce2 : 192.168.110.50
    Is it possible to add a route which enables the ce2 interface to catch packets from the ce1 interface ?
    Regards,
    Armin

    The problem is a application which is only able to listen on one interface.
    To fix this, I have to make all packages visible on one interface.

  • ALE VA01 IDOCs are sent two times ?

    My ALE is working well, but for eacher sales order created, Two Idocs are send (Two different idoc number but the same sales order)!
    I use message controle and a partner profile Ku ans LS.
    So where can I check where is this double ?
    Transaction ? Tables ? Spro?
    Best regards
    Henri

    Hi Henri,
    Why do you need to have two partner profile KU and LS?
    Unless you want to send to different target systems. For example, KU is for customer 'ABC' and LS for CRM system.
    If you need only to send one target system then use only partner profile and delete the other one.
    Please ensure the two IDoc generated are having two different recipient (KU and LS) in IDoc control.
    If both IDocs have same recipient then you may need to check the ALE and IDoc configuration again.
    Please check NAST table for initial investigation.
    Hope this will help.
    and don't forget to reward points if helpful as a way to say thanks.
    Regards,
    Ferry Lianto

  • XI question on two different sender

    Hello all,
      I want XI to pick up two files and send them to two different receivers based on some conditions. This condition will be done via message mapping.
    Is it possible to do it without BPM? If we can do it with BPM how? I don't want to use transformation step becasue don't want to combine the messages.
    Regards,
    N.S

    HI,
    I think you should use BPM. We have one exact example see the below link
    http://help.sap.com/saphelp_nw04/helpdata/en/77/0737133012b24b9d0a12c6df2b1054/content.htm
    But without BPM?? i hav'nt tried,
    not sure try
    to receive two messages from the same machine as two messages and combine them into mltiple mesages and use 1:n , two interface mappings to send to two diffrent systems.the same interface mappings in receiver determination
    then other way is if you use the condition to send to diffrent systems.
    Regards
    Chilla
    Regards
    Chilla

  • How to map single input value to Two columns of Database table using format file of Bulk Copy Process

    Hi All,
    Am using OPENROWSET to load the file data into table, here the problem is i need to map same input value to two different columns of table, As format file doesn't allow the duplicate numbers am unable to insert same value to two columns, please help me to
    find a solution for this. 
    i can use only OPENROWSET because i need to insert some default values also which come based on file. only the problem is how to map same input value to two different columns of table. please give me the suggestions.
    Thanks,
    Sudhakar

    From what you say:
       INSERT tbl(col1, col2)
          SELECT col1, col1
          FROM   OPENROWSET(....)
    But I guess it is more difficult. You need to give more details. What sort of data source do you have? What does your query look like? The target table?
    Erland Sommarskog, SQL Server MVP, [email protected]
    Hi Erland,
    Thanks for your response
    my source file is text file with | symbol separate for ex:
    1002|eTab |V101|eTablet|V100|Logic|LT-7|Laptops|SCM
    Database table have columns like
    column1,column2,column3...etc, now i need to insert same value from input file into two columns for ex:
    the eTab value from text file has to be insert into column2 and column3 of
    table
    we cannot change format file like below one
    for the above situation how can we insert eTab into column2 and column3
    Thanks,
    Sudhakar.

  • Spltting a single msg and sending to different Receivers

    Hello All,
    I have a requirement where we need split a single message into 2  different messages and the we need to send them to two different receivers.
    SO we have created a single message mapping with 2 target messages and done the mapping. When running the end to end the first file is getting created correctly but the 2 nd receiver file is getting created but the content is not coming.
    Kindly provide your valueble suggestions.
    PS: sender and receiver all are File adapters.
    Thanks in Advance,
    Sudhasree

    Hi Sudhasree,
    What version of PI are you using?
    IF in MONI you are getting successful flag, then check the payload of the messages are they what you want in the file? OR any one of them is empty?
    Also have a look at this note too
    Note 1319404 - Split-Mapping in Configuration Overview
    Regards
    Suraj

  • One Java Mapping - two Different IDOCs

    Hi,
    is it possible to create 2 different IDOCs(IDOCTYP or MESSTYP different) with one Java mapping?
    thx

    Or what is more interested, when mapping is done only for first message, in my case IDOC, it is ok, if ther isn't any second message. What is also confusing, when I run whole proces, system dumps for all cases, even for one IDOC message. Trace:
    <Trace level="2" type="T">com.sap.engine.lib.xml.parser.NestedSAXParserException: Fatal Error: com.sap.engine.lib.xml.parser.ParserException: XML Declaration not allowed here.(:main:, row:1, col:44)(:main:, row=1, col=44) -> com.sap.engine.lib.xml.parser.ParserException: XML Declaration not allowed here.(:main:, row:1, col:44)</Trace>
      <Trace level="1" type="T">*** END APPLICATION TRACE ***</Trace>
    Error:
    xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="">
      <SAP:Category>XIServer</SAP:Category>
      <SAP:Code area="MAPPING" />
      <SAP:P1>unexpected end-of-file</SAP:P1>
      <SAP:P2 />
      <SAP:P3>1</SAP:P3>
      <SAP:P4>1</SAP:P4>
      <SAP:AdditionalText />
      <SAP:ApplicationFaultMessage namespace="" />
      <SAP:Stack>Exception CX_XMS_SYSERR_MAPPING occurred (program: CL_XMS_MAIN===================CP, include: CL_XMS_MAIN===================CM00A, line: 604).</SAP:Stack>
      <SAP:Retry>M</SAP:Retry>

  • XML message mapping considering idoc message variant

    Dear Experts,
    I am very new to PI. I am working on a scenario where I need to map VGON_OUT xml message from SNC system to ORDRSP.ORDERS05 inbound idoc of ECC 6.0 system.
    The issue is :
    In the inbound partner profile in ECC there are two ordersp message types. one with message variant SMI and another without any message variant.
    Both of them are using different process codes for processing.
    So my question is how to map the VGON_out xml message in PI?
    Please note: the key difference is the idoc message variant.
    There is no way to merge both of these message types as their function is serving two different purposes.
    I have attached the xml file and the screenshot of the partner profile here.
    Any suggestion or reference link or document would be deeply appreciated.
    Thanks in advance.
    Praty

    Hi Pratyusa,
    Did you try with different partner profiles for each ORDRSP?
    Regards,
    Krupa

  • Can Same IDOC be sent to same Receiver with two different Message Mappings

    Hello Experts,
    Wierd doubt but want to confirm from you people.
    Scenario:
    One R/3 Sender
    SAP XI :
    One external Receiver :
    IDOC is sent from R/3 to external receiver via SAP XI.
    One interface has already been developed for the above scenario.
    Now client wants another interface to be developed for the same IDOC. Might be the values would be different for some specific fields.
    Doubt:
    Is it possible to send one similar IDOC to one target system with two different Message Interfaces?
    Ex: Created Message Interface 'A'  and correspoding Message Mapping with an IDOC
          Created Message Interface 'B' and correspoding Message Mappingwith an IDOC
    Values would be different in the IDOC and would be triggered from SAP R/3. Basing on the specific value of a field in the IDOC , can we trigger a different Message mapping for the same receiver?
    I donot see any reason in developing a new interface for the same IDOC but as per the situation mentioned above, can it be done?
    Thank you
    Alex.

    Create two interfaces for target side.
    If you want only one target interface should get data.
    You can use simple interface determination. Use the condition tab and specify the field there but the value should be constant. e.g. if field has value EN it should go to First interface and if Field has value != EN it should go to second interface.
    If you want to divide your message in to both target interfaces.
    Multimapping also can help but only if both of your target interface need idoc data.
    You can use ifexist standard node functions from UDF to choose between the field.
    For multimapping you can go to messages tab in the message mapping and can add interfaces using + sign.
    then when you see the design part you will see two messages.
    Now Start with receiver determination in ID and create one receiver determination for the sender and receiver, this shows you have only one receiver.
    In interface determination you have to choose extended and choose your mapping designed.
    then both your interfaces automatically would appear.
    Create two receiver agreements and one sender agreement.
    thanks
    hemant
    Edited by: Hemant on Aug 28, 2008 12:29 AM

  • How to set two different welcome-file to different servlets in web.xml

    Hi friends,
    Can some one help with web.xml file
    I have to different servlets in applications.
    I want to set two different welcome files for my two different
    servlets in web.xml
    Please, can some one give me sample code to achieve this.
    Here web.xml code:
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <!DOCTYPE web-app PUBLIC
    "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
    "http://java.sun.com/dtd/web-app_2_3.dtd">
    <web-app>     
         <servlet>
              <servlet-name>reports</servlet-name>
              <servlet-class>com.caremark.ivr.servlet.IvrReportsServlet</servlet-class>
         </servlet>
         <servlet-mapping>
              <servlet-name>reports</servlet-name>
              <url-pattern>/reports</url-pattern>
         </servlet-mapping>
         <session-config>
              <session-timeout>30</session-timeout>
         </session-config>
         <welcome-file-list>
              <welcome-file>reportsindex.jsp</welcome-file>
         </welcome-file-list>
         <servlet>
              <servlet-name>calldetails</servlet-name>
              <servlet-class>com.caremark.ivr.servlet.IvrCallDetailsServlet</servlet-class>
         </servlet>
         <servlet-mapping>
              <servlet-name>calldetails</servlet-name>
              <url-pattern>/calldetails</url-pattern>
         </servlet-mapping>
    <welcome-file-list>
              <welcome-file>calldetailsindex.jsp</welcome-file>
         </welcome-file-list>
    </web-app>
    I need this fix immediately. Your help will be really appreciated. Thanks in advance.

    First of all, my understanding is that you need to have a Servlet 2.4 complaint server to do this...Given that, you're supposed to be able to simply specify the Name of the servlet as the welcome-file to get it to work. For example:
    Your servlet section:
    <servlet>
      <servlet-name>Controller</servlet-name>
      <servlet-class>com.company.ControllerServlet</servlet-class>
    </servlet>Now you would add the following to your welcome file list:
    <welcome-file-list>
      <welcome-file>Controller</welcome-file>
    </welcome-file-list>Note that you use the servlet-name value from the servlet definition, NOT the url-mapping from the servlet-mapping section.
    Please note that I cannot verify this as I am running a 2.3 server at home. When I get to work Friday I can test on a 2.4 machine. However this shouldn't take you more than a minute to test.
    Note that I did try this on the 2.3 compliant server and it did NOT work (as I expected)...
    HTH.

  • Two different Interface map to one Interface

    Hallo together
    I search a solution to Map two different Interface to one.
    What ist the best way. I think i start with BPM and with a Interfacemapping with two Out Interface.
    Example of the Interface.
    Outbound Interface M1
    <?xml version="1.0" encoding="UTF-8"?>
    <resultset>
      <row>
        <KSNR>1</KSNR>
        <KSBEZ>bezeichnung</KSBEZ>
        <KSKAD1>adresse</KSKAD1>
        <KSKAD2>1</KSKAD2>
        <KSADR1>adresse1</KSADR1>
        <KSADR2>adresse2</KSADR2>
        <KSSTR>1</KSSTR>
        <KSPLZ>1</KSPLZ>
        <KSORT>ort</KSORT>
        <KSLAND>1</KSLAND>
        <KSTEL>1</KSTEL>
        <KSFAX>1</KSFAX>
        <KSVRAN>1</KSVRAN>
        <KSNTEL>1</KSNTEL>
        <KSOEF1>1</KSOEF1>
        <KSOEF2>1</KSOEF2>
        <KSRTAN>1</KSRTAN>
        <VSTNR>1</VSTNR>
        <UPDATE_IDENT />
      </row>
    </resultset>
    Outbound Interface M2
    <?xml version="1.0" encoding="UTF-8"?>
    <ns1:FileXML_MT xmlns:ns1="urn://ValoraFileCopy">
      <FileName>test</FileName>
      <Base64 />
    </ns1:FileXML_MT>
    Inbound Interface M3
    <?xml version="1.0" encoding="UTF-8"?>
    <ns1:M_DP xmlns:ns1="urn://ValoraFileCopy">
    <FileName>test</FileName>
      <ns1:Base64>
        <ns1:D_DPid>1</ns1:D_DPid>
        <ns1:D_DPName>bezeichnung</ns1:D_DPName>
        <ns1:D_DPAdress>adresse</ns1:D_DPAdress>
        <ns1:D_DPTown>ort</ns1:D_DPTown>
        <ns1:D_DPZipCode>1</ns1:D_DPZipCode>
        <ns1:D_Adress1>adresse1</ns1:D_Adress1>
        <ns1:D_Adress2>adresse2</ns1:D_Adress2>
      </ns1:Base64>
    </ns1:M_DP>
    Thanks allo fro help
    Regards Thomas Neuhaus

    Hello,
    You don't need BPM for the mapping. You can use the graphical mapping with 2 inbound messages and 1 outbound message.
    http://help.sap.com/saphelp_erp2004/helpdata/en/4f/ef761a5ecfb1418b79896e10fe4c57/frameset.htm
    Regards,
    Chris
    Message was edited by: Christophe DUMONT

  • BPM could be trigger for two different IDocs

    Hi Gurus!!
    Can I configure a BPM to be triggered by one of two different IDocs? I explain my scenario to clarify the question.
    I have a requirement to do several actions with the IDoc Types MATMAS05 (Material) and CLFMAS02 (Material Characteristics).
    To do these actions I use BPM, but I have several scenarios: receive MATMAS05 and CLFMAS02, receive only MATMAS05 or receive only CLFMAS02.
    I need to configure the BPM to be triggered by MATMAS05 or CLFMAS02, somebody could guide me, please?
    I have read something about a receiver determination step on the BPM.
    Thanks and regards,
    Manuel.

    Hi All,
    I am also facing same problem. I want to create material using IDOC and characteristics value. Don't know how to proceed.
    Can any body explain in detail if possible with example code.
    Thanks and full points in advance.

Maybe you are looking for

  • How do I create a new template without creating a new document?

    I already have my document typed up but I would like to create a new template in the same document I'm using but when ever I do, it creates a new window claiming it's a new document. Suggestions?

  • Rcp server not working: BUG IN CLIENT OF LIBDISPATCH:

    I have started rsh service in my mac server. i able to rsh my mac server from other systems. But unable to rcp. When i try to rcp from some other system, i get below crash report ####################################3 Process:         rshd [46650] Pat

  • In FMDERIVE does the "Overwrite w/New Value"...

    ...button impact automatic Status Indicator on transactions.  Heres the situation.  We had a major re-organization and I set up an LSMW to transfer asset value from assets linked to an old  Cost Center to a new asset shell linked to a new Cost Center

  • MacBook Pro keeps going to sleep in closed-lid mode and external monitor

    I am trying to run the MacBook in closed lid mode with an external monitor. It seems to work fine at first, but after about 10 seconds, it goes to sleep. I can wake it back up but it just goes to sleep again. Has anyone seen this before?

  • Insert query slows in Timesten

    Hello DB Experts , I am inserting bulk data with ttbulkcp command. my permsize is 20GB . Insert query gets slow . can anyone help me that how can i maximize throughput by ttbulkcp. Regards,