N to 1 multimapping scenario

Hi experts,
I have done N to 1 multimapping scenario following the below link..
http://www.****************/Tutorials/XI/BPM/Fork1.htm
In this link it is done for occurrence 1 in message mapping.If my sender files have multiples records(occurrence 0..unbound).
What configurational changes I hv to make ??
Thanks in advance

Hi
Suppose in both sender file I have mutiple records.Lets say,
File1: <ns1:mt_input1 xmlns:ns1="http://www.sandbox/xi/testgd">
         <Name>abc</Name>
         <Place>mumbai</Place>
         <ID>1</ID>
      </ns1:mt_input1>
      <ns1:mt_input1 xmlns:ns1="http://www.sandbox/xi/testgd">
         <Name>xyz</Name>
         <Place>delhi</Place>
         <ID>2</ID>
      </ns1:mt_input1>
File2 : <ns1:mt_input2 xmlns:ns1="http://www.sandbox/xi/testgd">
         <Company>qwe</Company>
         <DOJ>121212</DOJ>
         <ID>1</ID>
      </ns1:mt_input2>
      <ns1:mt_input2 xmlns:ns1="http://www.sandbox/xi/testgd">
         <Company>rty</Company>
         <DOJ>141414</DOJ>
         <ID>2</ID>
      </ns1:mt_input2>
Based on that i want to merge both the records of sender files in target file based on ID(which has two values 1 and 2)
target file: abc, mumbai, qwe, 121212, 1
                 xyz, delhi, rty,141414,2
It is working if I have only one record in files.
Please suggest how can i do it for multiple records.

Similar Messages

  • Design Approach for 1:N Multimapping scenario with SAP ECC Receiver

    Hi Experts,
    I am trying to find the best approach to implement the following scenario. its desribed as follows:
    Legacy Database ->XI ->  SAP scenario.
    1. Pick records from database table with status ='n'
    2. The records picked can have one or more RefNos i.e. if 2000 records are picked 1500 can have RefNo :1111 and rest 500 RefNo: 2222
    3. 1st condition is to split the records into multiple messages if reference nos are different, so for scenario in point 2 it will be 2 messages. Secondly if the no of records are more than 1000 then split further into 2 message. So 1500 Ref No would be split into messages with 1000 and 500 records. Hence we get 3 messages. I know something similar was achieved in this blog:
    </people/claus.wallacher/blog/2006/06/29/message-splitting-using-the-graphical-mapping-tool
    4. Once the data is forwarded to ECC and its successfully updated, we need to update the status of the database table on the sender side to 'y';
    So the point where i am not very clear as of now is,
    1. What alternative I choose for PI-> ECC call? Its a 1:N multimapping split scenario and as far as I know the call has to go via AE, so is RFC the only option or is there a way to have a call with Proxy/IDOC? Or will there be an option to limit such a scenario at the JDBC Adapter level so that split is not needed. I am not sure if that can be achieved and is a better solution.
    2. If I go for either of the approaches mentioned above, what is the best way to achieve point 4, i.e. update the database table at the sender. As JDBC Adapter would be async and hence we either use a Aysnc-Sync bridge(for proxy/rfc receiver) or some other option like triggering a outbound interface from SAP side with the update data?
    Hope that experts can provide the inputs on the best way forward.Let me know if anything is missing from scenario details perspective.
    Best Regards,
    Pratik

    Pratik,
    2. If I go for either of the approaches mentioned above, what is the best way to achieve point 4, i.e. update the database table at the sender. As JDBC Adapter would be async and hence we either use a Aysnc-Sync bridge(for proxy/rfc receiver) or some other option like triggering a outbound interface from SAP side with the update data?
    Use the solution # 2, make it like this:-
    DB (async) -> PI -> Proxy (sync) -> PI -> DB (async)
    Just out of curiosity, why you breaking the records into 1000's in PI? Why not you select only 1000 records when polling the DB? That will help in improving the overall performance.
    Regards,
    Neetesh

  • Configuration of multimapping scenario without a bpm

    Hi all,
    I am trying simple multimapping without a bpm for jdbc to jdbc scenario
    I have created
    a single business service which has one sender interface and two receiver interfaces.
    Two communication channels, one for sender jdbc and another for receiver jdbc.
    One Sender agreement.
    Two receiver aggreement with the same communication channel.
    Receiver determination.
    Interface determination of enhance type.
    Hav i missed anything? I am getting a error while testing the configuration in Interface determination and Mapping step.

    Hello
          I suspect there could me an error at Message Interface or Message mapping.
         What is the error syntex you encountered. As a process you have done well with
                1) communication channel
                2) Sender agreement & Two receiver aggreement
        Let me know. What are the action item at Intregatrion scenario.
             It was nice answering your question. Feel free to reach SDN if you have any questions. What are the action item at Intregatrion scenario.
    Thanks in advance for your co-operation
    Ashok Babu
    Enterprise Business process Architect
    SAP XI Senior Consultant

  • PI 73 sp2 - issue with multimapping

    We are having a strange issue in PI 73 sp2. We recently upgraded from PI 711 to PI 73 and migrated all our development artifacts over to the new instance. We have a multimapping scenario (1:3) which was working fine in the PI 711 instance is not working anymore in the new PI 73 instance.
    It is a
                                       SOAP (AE) -> IE -> JDBC/ABAP Proxy
    scenario.
    We can see the payload in the RWB in Comm Channel monitoring but when it comes to the IE, mapping runtime is receiving an empty payload and the mapping fails.
    Has anyone encountered any such issue ? I am hoping that someone can point me to a OSS note as it doesnt seem like anything is wrong with the interface as such. It was working just fine in the PI 711 instance and no changes were made in the new instance.
    Thanks
    Sridhar

    Gabriel .. we are using the SOAP Adapter, we did update the meta-data to the PI BASIS 7.30 version. We are able to see the payload in the RWB in the SOAP Sender channel.
    On further research, we noticed that the mappings migrated over from the PI 711 box to the PI 730 box are not working as designed as the contexts seem to be messed up. Hence, the sequence of execution is haywire and causing lot of errors. I am not sure if anyone else is facing similar issues.
    Thanks
    Sridhar

  • How to do Mapping for the following Scenario

    Hi All,
    I am doing File 2 File Multimapping Scenario with out using BPM Concept but, My result was Struck at Message Mapping.
    Source                          Target
    Message                       Message1     Details                                Details
             Name                            Name
             ID                                  ID                                                                               
    Message2        
                                                    Details
                                                        Name
                                                        ID
    I am getting Runtime Exception at Message Transfermation error if i do the one 2 one direct mapping....
    so, How to do the Mapping for thei Scenario?
    WIth Regards,
    Mahesh

    Hi Farooq,
    I am using Split and Merge.
    Source XML
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://sap.com/xi/XI/SplitAndMerge" targetNamespace="http://sap.com/xi/XI/SplitAndMerge">
    <xsd:import namespace="http://tcs.com/Demo" />
    <xsd:element xmlns:p0="http://tcs.com/Demo" name="Messages">
    <xsd:complexType>
    <xsd:sequence>
    <xsd:element name="Message1" form="qualified">
    <xsd:complexType>
    <xsd:sequence>
    <xsd:element ref="p0:BPM_In_MT" />
    </xsd:sequence>
    </xsd:complexType>
    </xsd:element>
    </xsd:sequence>
    </xsd:complexType>
    </xsd:element>
    </xsd:schema>
    Target XML
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://sap.com/xi/XI/SplitAndMerge" targetNamespace="http://sap.com/xi/XI/SplitAndMerge">
    <xsd:import namespace="http://tcs.com/Demo" />
    <xsd:element xmlns:p0="http://tcs.com/Demo" name="Messages">
    <xsd:complexType>
    <xsd:sequence>
    <xsd:element name="Message1" form="qualified">
    <xsd:complexType>
    <xsd:sequence>
    <xsd:element ref="p0:BPM_Out_MT" minOccurs="0" maxOccurs="unbounded" />
    </xsd:sequence>
    </xsd:complexType>
    </xsd:element>
    <xsd:element name="Message2" form="qualified">
    <xsd:complexType>
    <xsd:sequence>
    <xsd:element ref="p0:BPM_Out1_MT" minOccurs="0" maxOccurs="unbounded" />
    </xsd:sequence>
    </xsd:complexType>
    </xsd:element>
    </xsd:sequence>
    </xsd:complexType>
    </xsd:element>
    </xsd:schema>
    Thanks
    Mahesh

  • More than one outbound interface for the webservice scenario

    Hi Experts,
    Is it possible to have more than one outbound interface for the Webservice synchronous scenario? I have tried it , but I couldn't implement it.
    I would like to have your suggestions.
    Regards
    Sara

    Hey,
    Creation of a wsdl file
    /people/riyaz.sayyad/blog/2006/05/07/consuming-xi-web-services-using-web-dynpro-150-part-i
    N:1 seemz he was refering to multimapping scenario.
    <b>Cheers,
    *RAJ*
    *REWARD POINTS IF FOUND USEFULL*</b>

  • Problem in multimapping without BPM

    Hi,
          I am doing a file to file multimapping scenario (1:n) in PI 7.0. In interface mapping the source has occurence of 1 and target occurrence is 0..unbounded.
    Problem is with this configuration, in my ID interface determination, the interface mapping is not being recognised and I'm getting "object not found" when trying to select the interface mapping. and there is no problem with inbound and outbound interfaces.
    However, when I change the occurrence of my target to 1 in IR, then I can select the interface mapping in Interface Determination in ID.
    Could any one please throw some light on this problem?
    Regards,
    Shiladitya

    Hi,
      Pls use Enhanced option in Interface determination.
      try to assigh interface mapping and your inbound interfaces.
    check the following blog.
    https://weblogs.sdn.sap.com/pub/wlg/3115. [original link is broken] [original link is broken] [original link is broken]
    regards
    mahesh.

  • Doubt with MultiMapping

    Hey guys
    i m doin a multimapping scenario but getting some errors.its for test purposes so my source and target structures both are same .
    i m taking help from the followin the following blog
    /people/jin.shin/blog/2006/02/07/multi-mapping-without-bpm--yes-it146s-possible
    My source structure is
    <?xml version="1.0" encoding="UTF-8"?>
    <ns:MT_file_file xmlns:ns="http://tb1.com">
      <Test>Test</Test>
    </ns:MT_file_file>
    and on the receiver side i have repeated this structure twice i.e. under the message tab i added the same structure again entry under Target message ,so i have Message1 and Message2 on target side and Message 1 on sender side.den i did the mapping and when i test my mapping under the test tab,i dont see the <Test>.....</Test> element getting generated.the structure i get ove thr is
    <?xml version="1.0" encoding="UTF-8"?>
    <ns0:Messages xmlns:ns0="http://sap.com/xi/XI/SplitAndMerge">
      <ns0:Message1 />
      <ns0:Message2 />
    </ns0:Messages>
    and in the bottom it says "Compilation of Mapping successful"
    and idea why my target structure is wrong.
    i m on SP9
    thanx
    ahmad

    Hi Ahmad -
    On the test tab, there's a little wand icon for "Generate Instance".  Use this and populate your <Test> field with a value.  If you look at your test source, it should look something like:
    <?xml version="1.0" encoding="UTF-8"?>
    <ns0:Messages xmlns:ns0="http://sap.com/xi/XI/SplitAndMerge">
       <ns0:Message1>
          <ns:MT_file_file xmlns:ns="http://tb1.com">
             <Test>Test</Test>
          </ns:MT_file_file>
       </ns0:Message1>
    </ns0:Messages>
    If this is how you have it, then the only other thing might be that you're not mapping to the <i><ns:MT_file_file xmlns:ns="http://tb1.com"></i> node on the target side, especially if you set the occurence to 0..1.  If it's 1..1, then that node should automatically come without a mapping.
    Regards,
    Jin

  • 1:n mapping

    hi all;
    i have a 1:n multimapping scenario.
    i am following the blog /people/narendra.jain/blog/2005/12/30/various-multi-mappings-and-optimizing-their-implementation-in-integration-processes-bpm-in-xi but am not able to find any index in the send step.
    can any one help.

    hello all;
    these are the steps i have gone through:
    defined the 1:n message mapping as well as interface mapping with targer structures occurence 0--unbound.
    in the BPM i have defined the target interface in the container as multiline and have defined a simple interger variable index.
    i have initiated the container variable index as 0
    in the loop i have give the end condition
    i am not able to see still the index in the send step

  • IDoc Collection in BPM and Without BPM

    Hi All
    I'm much confused on IDoc collection for which i require your expertise to clear my doubts. My primary question is based on the context "Multimapping doest work with idocs".
    consider the case ->  collect files-idoc scenario. <b>Using BPM</b> i need to have
    a multimapping scenario. In the <b>transformation step</b> we will have a <b>container</b> element where <b><u>mutiline</u></b> is enabled so that the collected files are <b>transformed into one abs interface</b>. my dopubt arises here when i consider this scenario <b>without bpm</b> that is N:1 mapping (no collection). in this case why this <b>multimapping works in bpm process</b> and <b>not incase of non-bpm scenarios</b>? is it because in bpm the mapping happens in BPE?
    pls clarify.
    thks
    Prabhu

    <i>>>>>In an N:1 scenario without BPM, how could you send more than one message to your multi-mapping? You can't.</i>
    yes we cant as this validation is not supported at abap stack level and N:1 is possibkle without BPM (or i'm missing something here). but this same step with bpm get executed succceffuly. whats the logic behind it
    Message was edited by:
            Prabhu  S

  • BPM 1:N split into different service interfaces

    Hi everyone, just a quick question about multimapping scenarios.
    If I want to make a 1:N message split in BPM I should use a transformation step and specify a multiline container element to get the result of the transformation. That multiline container element is bound to a single message type so, If I want to split my incoming interface into different service interfaces (based on different message types), how can I handle that in BPM? Or is it just not possible?
    Thanks in advance.

    Hi,
    It is possible to specify more than one container element for the resulting messages of the transformation step
    Its possible.
    In operation mapping in IR if you add 3 interfaces in Target side and the same mapping if you select in BPM transform step then it will ask for three contaner.
    Create 3 contaneir.
    Select type as Abstract Interface.
    Then select individual interface in those containers.

  • Pbm with choosing right SCV

    Hi
    I have multiple Legacies, and couple of R-3 instances in a landscape.Initially there was a decision to choose separate SCVs for each System in the landscape like
    System_R3_1.0
    Legacy1_1.0
    Legacy1_2.0
    Legacy1_3.0
    Namespaces will be defined interface wise under the specific SCV.
    As a general design design, we decided to have mappings in the target interface Namespace.
    During interface design we found that we had complex multimapping scenarios both inbound and outbound to R3.
    In case of Inbound R-3, where we have the mapping under the R3 SCV inbound interface namespace, we multimapped by creating a usage dependency between Legacy1 and R3.But in case of a multimapping reqm't for another interface InBound to LEGACY and outbound to R3, I cannot have the same facility, as the dependency enables legacy structures to be imported into only R3 namespace and not vice versa.
    How do I overcome this problem.??
    Other solution I can think of is having a single SCV and having all the R-3, Legacies defined under multiple namespaces but considering the number of interfaces per legacy , it turns out to be a bit unmanageable number under single SCV..
    One another solution is to always have the multimappings in the outbound R3 system, but we want to avoid this for design reasons..
    Please let me know your views on this!!!

    Hi Frank
    Thanks for the response, but that would mean I have to always maintain copy of my source message structure in the target SWCV as well..Sheeks that would a pbm'tic solution because whenever there is a change in one datatype in the source, I will have to run around to every other SWCV where it is being used..!!
    Thanks for your help on this!!
    In case I use standard SCV say SAPAPPL for maintaining IDOCs and RFCs and create dependencies to my interface implementations for R3 and legacy interfaces ,
    Qn 1) will there be any issue say during transports between XI dev-QA-Prod instances??
    Qn 2) Will there be any issues during change to a completely new SCV version in a future upgrade!!
    I know these are pretty vague question but was hoping for some info before I pain SAP support with queries..!!

  • How to do the multimapping in File to File Scenario

    Hi All,
    I am doing File to File scenario using Multimapping Concept.pls send the procedure how to do the Massege mapping using Multimapping.
    I have a source structure like this.
    <order header>
    order no
    order Description
    </order header>
    <Orderitem>
    matno
    description
    Qty
    UOM
    </Orderitem>
    i need output text file Like
    Ono Oodesc OMatno Odes Oqty OUOM
    1      02    123    Oil  2    L
    1      02    789    Milk 4    L
    How to do the multimapping for this.if any Advanced java functions needed pls send the code.
    Thanks
    Govindu.

    Hello Govind,
    Make the target str as below
    <root>
    <Row>
    <OrderNo></OrderNo>
    <OrderDesc></OrderDesc>
    <Matno></Matno>,
    <Desc></Desc>
    <Qty></Qty>
    <UOM></UOM>
    </Row>
    </root>
    The mapping for elements
    <Matno>,<Desc>,<Qty>,<UOM> is straight-forward. The node <Row> can be mapped to <OrderItem> node in source. For orderNo and OrderDesc you need to use advanced UDF (with entire queue cached) as below.
    public void getOrderNo(String[] a,String[] b,ResultList result, Container container){
    /Declare a vector to store unique Order Numbers  /Order Desc/
    Vector vOno = new Vector();
         for (int i = 0;i<a.length;i++){
         if (a<i>.equals()ResultList.CC) continue;
         /Add distinct Order numbers to the vector/
         if(!vOno.contains(a<i>)) vOno.add(a<i>);
    int headerCounter = 0;
    String value = new String();
    value = (String) vOno.get(headerCounter);
         for (int j = 0;j<b.length;j++){
         /When context changes, move to next order no/
         if (b[j].equals()ResultList.CC){
                       headerCounter++;
                       value = (String) vOno.get(headerCounter);
                      continue;
         /Repeat the current order number/Order Desc until a context change occurs/
         result.addValue(value);
    The mapping for OrderNo can be like below:
    Pass <Order No> from Header to the UDF as array a[] and <OrderItem> from Item as array b[]. Take the output of the function and make it SplitByValue the result of which can be passed to OrderNo. The context of both < Order No> and <OrderItem> has to be one level higher.
    Similar mapping for OrderDesc can be made using the same UDF
    I hope that resolves your problem.
    Regards
    Amit

  • Multimapping n:1 (XML to IDOC) Issue - Cannot use map in the scenario

    Hi! I have created a multimapping in the directory. Source message is 0...unbounded and destination message is 1. The intention is to bring a single file into XI that contains mutliple XML messages. I then need to map this into a single IDOC. I have the mapping working. However, when I try and bring this into my integration scenario, XI cannot find the message interface.
    I am not 100% convinced that this will all hang together =) But Cannot even prove that 'cos I cannot set this up in the scenario.
    Any ideas would be greatly appreciate and rewarded.
    Thx
    Duncan

    Apologies for getting all my terminology screwed up. Here is what I have:
    <u>Integration Repository</u>
    Imported Objects - Target IDOC
    Interface Objects : External Definitions - XML schema of source message
    Interface Objects : Message Interface - For source XML; Outbound + Asynch
    Message Objects : Message Mapping - XML (0..unbounded) to IDOC (1) map
    Message Objects : Interface Mapping - XML message interface (0..unbounded) -> XML to IDOC mapping -> IDOC (1)
    <u>Integration Directory</u>
    Interface Determination...
    I select Type of Interface Determination = Extended but when I pull down the dropdown I do not see the multimap.
    I have this working OK for one IDOC to multiple XML messages, doing the same as above. I have checked SCV, namespace etc... and they are correct. I am sure I am missing something very simple.
    Again, any ideas appreciated.
    Thx
    Duncan

  • Advise required for the scenario logic

    Hi Experts,
    SCENARIO NAME: FILE(text format) to IDOC.
    requirement.
    ex. input is 10 line items if any of the line item fails that supposed to throw exception what ever success lines are there that should process with out any fail or idoc should generated.
    there no multi mapping. only one structure.
    thanks

    Hey,
    You need to use 1:N MultiMapping here. In PI, each message is a single unit of work, either the complete message fails or passes.
    For your case, you need to generate an IDOC for each Line item. This way, if one message fails(read line Item), other messages (read line Items) won't be affected.
    As far as alerts are concerned, you can simply configure alerts using ALRTCATDEF or CCMS. That will take care of sending e-mail in case of failure.
    Below is the Blog to do Multimapping and generate Multiple receive structures from a single source structure. Please note that the Blog is old and you don't need to use BPM for it:
    Illustration of Multi-Mapping and Message Split using BPM in SAP Exchange Infrastructure
    Thanks
    Aamir

Maybe you are looking for