Multi mapping and correlation

Hi there
i have an File -->  PI --> Idocs  Scenario,
the File structure is something like this:
1  xxx yyy 9865
1  zzz www 9834
2  sss ttt 12392
2  rrr eee 45323
Basically they're deliveries with some additional info,
I want to group them like this:
Header info : 1
Positions:
xxx yyy 9865
zzz www 9834
Header info : 2
Positions:
sss ttt 12392
rrr eee 45323
To be mapped to SHIPPL Idoc ( External transportation documents)
So basically i'd assume i have to split all those deliveries into individual message on BPM and then use correlation to build up the documents grouping all the deliveries??, can you guys help me on how to build up this process??, what goes outside or inside the BPM and how can i resolve all the mapping i need to do?
Thank you Very Much
Roberto.

Hi,
I beleive Multimapping will not work without BPM when we have Idoc as a receiver channel.
You can do these steps:
1) create XSLT mapping to group the data based on the key. (1st mapping)
   if your input after FCC conversion is (before xslt)
   <a1></a1>
  <a2></a2>
  <b1></b1>
   <b2></b2>
Output of xslt should be : (grouping based on some key field or value)
<Group>
    <a1></a1>
    <a2></a2>
</Group>
<Group>
  <b1></b1>
   <b2></b2>
</Group>
2) If you look at Idoc the occurence of Idoc field is one. Download the xsd of Idoc and change the occurence to 1 to unbounde. upload xsd as external definition and use it in mapping.
3) now you can create a graphical mapping which will create the Idoc tag for each Group. It will create multiple Idocs in target system
By using above method you can avoid BPM and there is no needd to use Multimapping also.
Thanks
Inder

Similar Messages

  • Multi-Mapping and Message Split using BPM

    Hi All,
    Could anyone pls let me know clearly how message mapping can be done for this weblog
    /people/sudharshan.aravamudan/blog/2005/12/01/illustration-of-multi-mapping-and-message-split-using-bpm-in-sap-exchange-infrastructure
    Thanks,
    Ram

    Hi,
    When you are doing Message mapping after adding the Messaget types for source and target messages. You can click on the "" button in the target message and add one more tab. You can go to Message tab as shown in the 5th image and click "" button to add one more message type. Then do the mapping as usual.
    <b>Based on the value of the element(name), the node of input(details)should be directed to one of the two message types</b>
    Here in this blog it is done based on the Name.
    You need to use IFTHENELSE boolean function and do the mapping.
    Thanks,
    Prakash

  • Multi mapping and message splitting in BPM

    Hi ,
    I am working with this scenario ...
    /people/sudharshan.aravamudan/blog/2005/12/01/illustration-of-multi-mapping-and-message-split-using-bpm-in-sap-exchange-infrastructure
    how many message interfaces i have to create .
    one outbound , one abstract  and two inbound .. is it correct.

    Hi
    Minimum you need to create three message interfaces i.e. Bpm_In_MI_Abstract,  aBpm_Out_MI_Abstract Bpm_Out1_MI_Abstract, because abstract interfaces can be use inbound and outbound as well.
    You can also use create implement it by using inbound and outbound message interfaces. In that case you have to use three additional interfaces(1 outbound and 2 inbound).
    Regards
    Sami
    Reward points if helpful.

  • Multi-Mapping and Message Split using BPM UDFs Error

    hi
    As per the below blog
    Illustration of Multi-Mapping and Message Split using BPM in SAP Exchange Infrastructure
    I have just modified the UDFs(1.selectnodeifA 2.selectNodeifB)
    1.selectnodeifA
    for(int i=0;i<=n;i++)
    if(Name<i>.equals("A"))
    result.addValue(Node<i>);
    2.selectNodeifB
    for(int i=0;i<=n;i++)
    if(Name<i>.equals("B"))
    result.addValue(Node<i>);
    while checking I am getting the following errors
    Source code has syntax error: 
    D:/usr/sap/D10/DVEBMGS01/j2ee/cluster/server0/./temp/classpath_resolver/Mapdc8fa4d0896011dd907d001cc01cef0d/source/com/sap/xi/tf/_bpm_mm_.java:132: cannot resolve symbol
    symbol : variable n
    location: class com.sap.xi.tf._bpm_mm_
    for(int i=0;i<=n;i++)
    ^
    D:/usr/sap/D10/DVEBMGS01/j2ee/cluster/server0/./temp/classpath_resolver/Mapdc8fa4d0896011dd907d001cc01cef0d/source/com/sap/xi/tf/_bpm_mm_.java:140: cannot resolve symbol symbol : variable n
    location: class com.sap.xi.tf._bpm_mm_
    for(int i=0;i<=n;i++)
    ^
    2 errors
    The source code given in the blog is correct ? I thought for loop has not completed
    pls help
    manian

    Hi manian,
    I was having a look to Illustration of Multi-Mapping and Message Split using BPM in SAP Exchange Infrastructure blog.
    The functions are not the same. I mean, yours and blogs functions.
    Each function has two parameters, Name and node. Furtheremore, in the blogs' functions is using arrays and you don't.
    So, the right code will be
    1.selectnodeifA
    for(int i=0;i<=node.length();i++)
    if(Name<i>.equals("A"))
    result.addValue(Node<i>);
    However, if you don't need an advance user defined function as you want to process just one element of the node's queue, you will not need to use for sentence.
    Something like:
    1.selectnodeifA
    // for(int i=0;i<=n;i++)
    if(Name.equals("A"))
    result.addValue(Node);
    Hope it is usefull for you.
    Carlos

  • Multi-Mapping and Dynamic Configuration

    Hello,
    Is it possible to use dynamic configuration in mulltip-mapping? (message split?)
    in a  proxy-mail scenario I am using a multi-mapping. The message gets splited by a specif field.
    (Field of source message-SplitByValue(Value Change)-CollapseCOntext->Target Message(1..N)
    WIthin the graphical mapping I have a dynamic configuration for the "Mail Subject"
    DynamicConfiguration conf = (DynamicConfiguration) container.getTransformationParameters().get(StreamTransformationConstants.DYNAMIC_CONFIGURATION);
    DynamicConfigurationKey keySubj = DynamicConfigurationKey.create( "http://sap.com/xi/XI/System/Mail", "THeaderSUBJECT");
    conf.put(keySubj,  pSubject);
    return pSubject ;
    I have mapped this field to a field in the target message.
    The messages are being splitted as expected and the value of pSubject is also correct.
    BUT when receiving emails the subject field has the same value for all splitted messages.
    My Question is "conf.put(keySubj,  pSubject);" overwitting all splitted outgoing messages?
    Thanks for the Help
    EMW

    As stated in http://help.sap.com/saphelp_nw70/helpdata/EN/43/09b16006526e72e10000000a422035/frameset.htm
    Adapter-Specific Attributes and Multi-Mappings
    In multi-mappings, there are multiple message headers with adapter-specific attributes. The mapping API can only access one message header. This has the following consequences depending on whether there are multiple source or target messages:
    ●     1:n Transformation
    If there are multiple target messages, the header for the adapter-specific attributes is copied for each message. This means that you can only create one header for all adapter-specific attributes, and not individual headers.
    ●     n:1 Transformation
    This variant is only possible for multi-mappings in integration processes. If there is more than one source message, read-access to the adapter-specific attributes of the various message headers is not possible at runtime.
    ●     m:n Transformation
    All afore-mentioned restrictions apply here. Developers can at most write the same adapter-specific attributes for all target messages to the header, without read-access to the attributes of the source messages. m:n transformations are only supported within integration processes.
    Regards,
    Henrique.

  • Multi mapping and File Content Conversion

    Hi,
    I've created a similar interface to the the one in this blog
    /people/jin.shin/blog/2006/02/07/multi-mapping-without-bpm--yes-it146s-possible
    In the Config, I receive a CSV and use FCC in the File Adapter to build the XML file. Because of the multimapping, XI adds the following to my Message Mapping
    <ns0:Messages xmlns:ns0="http://sap.com/xi/XI/SplitAndMerge">
       <ns0:Message1>
    Do I need to add this XML to the FCC??

    No,you dont need to add extra tags.
    Those tags are only for XI internal processing.
    Thanx
    Aamir

  • Graphical Multi Mapping and then XSLT Mapping

    Hi I have to do message Split. I'm doing this message split. Then I have use XSL Mapping where I'm basically sending the whole Source message into Target Node. Basically Graphical mapping splits one Source file into 2 target files and XSL Mapping should move these individual files to 2 target messages. How Can I refer the Individual messages in the Mapping ?.
    Since Actual message split takes place in Adapter Engine does XSLT Mapping acts on a Single message out of Graphical Mapping ( in my case Graphical mapping produces 2 messages  ) or It acts on both messages as no actaul split didn't took place yet in the Mapping runtime.
    No Guess work please ..let me know if you actually did it.Appreciate all your help.

    Message splits (1:n mappings) can be executed without BPMs. It will finally occur, as you said, at the Adapter Engine layer.
    When you deal with multimappings with graphical mapping, XI will automatically create two new tags surrounding your root tag(s) (tag in case you have multiple occurrence of 1 interface; tags in case your target messages are from different interfaces).
    But when creating multimappings with XSLT, ABAP or Java, you'll have to handle these two surrounding tags manually. So, in your xslt, your input will be like:
    > <ns0:Messages xmlns:ns0="http://sap.com/xi/XI/SplitAndMerge">
    >   <ns0:Message1>
    >     <ns1:Your_Message1 xmlns:ns1="http://your.namespace1">...</ns1:Your_Message1>
    >   </ns0:Message1>
    >   <ns0:Message2>
    >     <ns2:Your_Message2 xmlns:ns1="http://your.namespace2">...</ns2:Your_Message2>
    >   </ns0:Message2>
    >   ...
    > </ns0:Messages>
    (in case your target message is just 1 interface with multiple occurrence, you'll have only <Message1> tag with multiple occurence).
    So, the secret here is that you'll have to handle the <Messages> and <MessageX> tags in your xslt code.
    Regards,
    Henrique.

  • What is Multi-mapping in SAP+XI and when is it used?

    Hi SDN,
    Can you please tell me what exactly is a multi-mapping in SAP+XI  and when is it used with an example.
    Regards,
    Aniruddha Bhattacharya

    Hi Aniruddha,
      Multi mappings can be used in ccBPM which is used to map abstract interfaces. Development is the same as Message Mappings.
    n:1 Transformation
    Bundles multiple messages into one message, for example, individual purchase order items into one purchase order.
    1:n Transformation
    Splits a message into multiple messages, for example, a purchase order into the individual purchase order items.(its possible without BPM)
    n:m Transformation
    Converts a message into another message, for example, a message that is defined by interface A is converted to message that is defined by interface B.
    Multi-Mappings reference multiple message structures:-
    a) All source message structures are combined into 1 source structure.
    b) All target message structures are combined into 1 target structure.
    Therefore, there is only one source structure mapped to one target.
    With BPM:
    /people/sudharshan.aravamudan/blog/2005/12/01/illustration-of-multi-mapping-and-message-split-using-bpm-in-sap-exchange-infrastructure
    /people/narendra.jain/blog/2005/12/30/various-multi-mappings-and-optimizing-their-implementation-in-integration-processes-bpm-in-xi
    Without BPM:
    /people/jin.shin/blog/2006/02/07/multi-mapping-without-bpm--yes-it146s-possible
    Also go through this thread...you will find lots of link which are helpfull...
    Multi Mapping
    Regds,
    Pinangshuk.

  • Multi-mapping for ibound IDOC

    Hi! All
    It would be of great help if you provide your suggestions on:
    Mapping one XML source file to 6 IDOC receivers, 2 of them are of the same type and 4 are distinct idoc types.
    I tried multi-mapping and received the following error:
    "Messages in multi-message format can only be sent to one Adapter Engine"
    Looks like IDOC adapter does not support multi mapping...
    Can you please suggest any other option apart from using BPM(since it consumes lot of resources).
    Thanks a lot!!
    Regards,
    Patrick

    Hey
    its not possible to do Multimapping over IDOC's without BPM.
    other way around can be to do a single -single scenario,suppose u have 6 IDOC's to post then u need to design 6 different scenarios for them.
    without BPM you cant do multimapping for IDOC or HTTP
    Thanx
    Aamir
    Message was edited by:
            Aamir Suhail

  • Multi-mapping not found at configuration time

    Hi
      I have defined an interface mapping that takes one msg interface as source and two msg interfaces as targets - the underlying message mapping is a multi-mapping.
    However , when I go to configuration time - and create a enhanced interface determination - and drop down - to pick up multi-mapping - it says no objects found !!!
    I double check the sender interface and its link with the SWCV , the interface mapping - everything is ok . Coud anybody help me - as to why my multi-mapping is not being picked up at configuration time ( I also check the runtime cache - everything is ok )
    Please help !!!!

    HI,
    see the below links
    multi mapping - /people/sudharshan.aravamudan/blog/2005/12/01/illustration-of-multi-mapping-and-message-split-using-bpm-in-sap-exchange-infrastructure
    multi mapping without bpm -/people/jin.shin/blog/2006/02/07/multi-mapping-without-bpm--yes-it146s-possible
    Various multi-mappings and Optimizing their Implementation in Integration Processes (BPM) in XI.
    /people/narendra.jain/blog/2005/12/30/various-multi-mappings-and-optimizing-their-implementation-in-integration-processes-bpm-in-xi
    Multiple mappings into one Im - Multiple message mappings in one integration scenario
    Regards
    Chilla

  • Split Message value in Multi-Mapping

    Hello everybody,
    I got the following problem with 1:n Mapping
    My Source Structure is
    <root>
    .<element_list> // 1:1
    ..<element>     // 1:unbounded
    ...<value>
    ...</value>
    ..</element>
    .</element_list>
    </root>
    Sample for source structure:
    <root>
    .<element_list>
    ..<element>
    ...<value><b>WILLIAM</b>
    ...</value>
    ..</element>
    ..<element>
    ...<value><b>RICHARD</b>
    ...</value>
    .</element_list>
    </root>
    I want to split by multi-mapping!
    The target structure looks similar as source target structure (just <element_list> is missing)!
    So my structure looks in target:
    <Messages>
    .<Messages1>
    ..<element>    
    ...<value>
    ...</value>
    ..</element>
    .<Messages2>
    ..<element>    
    ...<value>
    ...</value>
    ..</element>
    For splitting the <value> tag is responsible:
    Every RICHARD should be mapped to <Messages1>
    Every WILLIAM should be mapped to <Messages2>
    --> so I use the if-function (I dont want to use the SORT function!)
    But this seems not to work.
    Any suggestions?
    Regards Mario
    null

    Hi Vijaya
    annotation:
    I need different messages!
    So in the tab >messages< of massage mapping
    Target Message: The message type must occur in row 1 & 2
    Like in thread: /people/sudharshan.aravamudan/blog/2005/12/01/illustration-of-multi-mapping-and-message-split-using-bpm-in-sap-exchange-infrastructure
    Here: First screen shot under >Message Mapping<
    Did you do this?
    Regards Mario
    Message was edited by:
            Mario Müller

  • Multi-Mapping with BPM?

    Hi Experts,
                    Can anyone send me a scenario which contains multi-mapping using BPM (collect pattern)........I searched on SDN but cudn't find any scenario which contains Multi-Mapping BPM scenarios. All the scenarios which r available based on without BPM.............points will given to the approriate replies.
    Thanks in Advance
    Faisal

    Hey
    strange you didn't find it,it was the second link when i searched SDN with the string "multimapping BPM"
    /people/sudharshan.aravamudan/blog/2005/12/01/illustration-of-multi-mapping-and-message-split-using-bpm-in-sap-exchange-infrastructure
    Thanx
    Aamir

  • Doubt in Multi mapping

    Hi
    Suppose i want 1:2 transformation. Both the destinations are of the same type. (say two database tables have to be updated int he receiver end, )
    1. I can create one business service with two receiver interfaces. And go for multimapping.
    or
    2. I can create 2 separate business services for the two target interfaces and proceed in the usual way.
    I would like to know when to go for multi mapping in terms of configuration.

    Hi Aarti,
    You can go through these two blogs for clearing doubts on Multi mapping
    /people/sudharshan.aravamudan/blog/2005/12/01/illustration-of-multi-mapping-and-message-split-using-bpm-in-sap-exchange-infrastructure
    /people/jin.shin/blog/2006/02/07/multi-mapping-without-bpm--yes-it146s-possible
    Pravesh

  • Multi-Mapping runtime issue

    Hi, Friend:
    We are using BPM to collect two type of message (Msg1 and Msg2) and map to target message (Msg3),
                              ------Receive1-------
    Start --Fork(start)                            Fork(stop) ---Transformation--Send
                              ------Receive2-------
    When we created all the messages from scratch, the process works, the process worked.
    After we use external definition (xsd), it always fails on transformation step.
    However,if we put the payload to test in message mapping, it success.
    Any thoughts ?
    Thanks
    Liang

    Hi, Praba:
    We have tested in both multi-mapping, and also interface mapping by using the same payload the causes error in runtime, they are all fine.
    The error happens on tranformation step: some nodes have very simple mapping like one to one, it can not create target node (see attached part of trace).
    Once we change the complained node mapping from a constant value, the next test shows next target node can not be produced.
    If the node is attribute, only required attribute complains, if the node is element, the node with min occurence of 1 complains
    <?xml version="1.0" encoding="utf-8" ?>
    - <MappingTrace>
      <Trace level="1" type="T">Mapping-Namespace:http://xmlfile2xmlfile</Trace>
      <Trace level="1" type="T">Mapping-Name:Im_PBC_Audit</Trace>
      <Trace level="1" type="T">Mapping-SWCV:64968F80768C11DCC184FCEB0A01071F</Trace>
      <Trace level="1" type="T">Mapping-Step:1</Trace>
      <Trace level="1" type="T">Mapping-Type:JAVA</Trace>
      <Trace level="1" type="T">Mapping-Program:com/sap/xi/tf/_PBC_Request_Response_AuditMapping_</Trace>
      <Trace level="3" type="T">Multi mapping required.</Trace>
      <Trace level="3" type="T">Creating Java mapping com/sap/xi/tf/_PBC_Request_Response_AuditMapping_.</Trace>
      <Trace level="3" type="T">Load 64968f80-768c-11dc-c184-fceb0a01071f, http://xmlfile2xmlfile, -1, com/sap/xi/tf/_PBC_Request_Response_AuditMapping_.class.</Trace>
      <Trace level="3" type="T">Search com/sap/xi/tf/_PBC_Request_Response_AuditMapping_.class (http://xmlfile2xmlfile, -1) in swcv 64968f80-768c-11dc-c184-fceb0a01071f.</Trace>
      <Trace level="3" type="T">Loaded class com.sap.xi.tf._PBC_Request_Response_AuditMapping_</Trace>
      <Trace level="2" type="T">Call method execute of the application Java mapping com.sap.xi.tf._PBC_Request_Response_AuditMapping_</Trace>
      <Trace level="1" type="T">RuntimeException during appliction Java mapping com/sap/xi/tf/_PBC_Request_Response_AuditMapping_</Trace>
      <Trace level="1" type="T">com.sap.aii.utilxi.misc.api.BaseRuntimeException: RuntimeException in Message-Mapping transformation: Cannot produce target element /ns0:Messages/ns0:Message1/ns1:BenefitEnrollment. Check xml instance is valid for source xsd and target-field mapping fulfills requirements of target xsd
    Thanks
    Liang

  • Multi mapping in proxy

    Hi all,
              I am Trying to do file to RFC Scenario where i have to post multiple invoices in a single bapi. I am using proxy in my scenario In such case can i do multi mapping and post the data to R/3 could you please suggest.
    Thanks in advance,
    Kalam.

    I am using proxy in my scenario In such case can i do multi mapping and post the data to R/3
    You have to use BPM for this because ABAP proxy uses the abap stack and multimapping without BPM requires java stack.
    Regards,
    Prateek

Maybe you are looking for

  • Database connection and what is the best method

    Hi - I am new at this, so hopefully someone can point me in the right direction. looking at a project costing form where specific users need to complete a form with some prepopulated data expense data The data is in a local Access database at the mom

  • Creating different instances of one class

    Hi everyone thanks so much for all the help so far! I want to create a new instance of class coauthorship everytime the loop goes around to a new record! However thats not whats happening it only creates 1 instance of coauthorship and it is overwritt

  • Calculation Script to change a number based on quantity in another

    Hello - and thanks for the help - I have no real idea of what I am doing when it comes to writing script.  I would like the cost of something to change depending on the quantity ordered... ie. the more you buy the better price you get. (ie.  5 or les

  • Need a signed JAR that lasts longer than a year

    We need to sign JARs but we can't use the standard Thawte or Verisign root CA. Both of them expire in a year. Since my company does not own the servers on which our application is installed, we can't revisit our customer's servers just because the si

  • Importing Excel Files and Formatting Issues

    Good afternoon ladies and gentlemen. When in doubt, post in the forum! Anyway, I am using java via ODBC to connect to an excel file to extract some info from it, using SQL statements. Everything can be extracted without any problems, however, Excel k