Message mapping value in memory

Hello,
I've a source:
field1
field2
   field3
   field4
and target:
statement1 for field 2 (update_insert)
statement2 for field 3 (update_insert)
statement3 for field 4 (update_insert)
The source is an IDOC.
It's possible have two Statement2 however only have a one field1, this field (field1) is mapping with a field of Statement2 and this produce an error: the second Statement2 hasn't filled the value field1 (because this field only come once - for first Statement2-)
how can i solve this?
thank very much

Hello Pedro,
IDOC (LOIPLO01)   -
> Database
segment -
> Statement1 (this only come once)
segment1 -
> Statement2 (this come many times)
segment2 -
> Statement3 (this come many times)
The problem is a field of the Statement2 is having filled with field of segment.
The first time occurrence of Statement2 is ok, but the other times an error occurs because we think the field of segment don't come more and your value is initial in the Statement2
how can we filled this field for second.. Statement2?

Similar Messages

  • Caching values between different executions of a message mapping

    Hi all
    Like global container object is used for caching values between different user defined functions
    within the same message mapping.
    Can v have some sort of cachingvalues
    between simultaneos exceutions of same message mapping?
    Thanks and Regards
    Bhasker

    Hi Bhasker raj,
        This facility is there if you are using seeburger adapters.
    YOu can use something called seeburger variables which can hold the data beyong the mapping in some permanent memory.
    Alternatively, you can think of creating a ZTABLE in the ABAP stack of XI and storing the data you want in it, using a UDF and get it back in another UDF.
    YOu can use the first UDF at last node/field in the message mapping and the
    secomd UDF in the first node/field in the mapping.
    Regards,
    Ravi

  • To get exception value in Message Mapping

    Hi folks,
    I would like catch bpm step exception in one message mapping, for example:
    I have create on ccBPM using one block, in block i have createad "ex" exception variable and set ex in all step (send and transformation), i have created one exception branch in block using "ex" exception.
    How can i get "ex" value and pass for one message mapping ?
    In MM how can i get text values from excpetion ocurred in ccBPM ?
    Im am trying using Global Variables but not found any parameter of exceptions.
    Can anybody help me, please?

    hi,
    >>In MM how can i get text values from excpetion ocurred in ccBPM ?
    this is not possible
    Regards,
    Michal Krawczyk

  • Lookup value mapping table through message mapping.

    Hello All,
    I am working on a graphical mapping (message mapping). When trying to map the source message to the target message, I need to find out it a particular <b>key</b> exists in the <b>value mapping table</b>. Depending on the result, I need to map different source fields to the target field.
    Is there any inbuilt function which will allow me to do a lookup on a value mapping table, or is it possible to lookup a value mapping table from a UDF?
    Please help!
    Warm Regards,
    Keerti

    Hi,
    Please see the below links for Value mapping ..
    Value mapping /people/sukumar.natarajan/blog/2006/10/23/accessing-value-mapping-defined-in-directory-using-java-functions
    Value mapping in XSLT /people/sreekanth.babu2/blog/2005/01/05/design-time-value-mappings-in-xslt
    Value Mapping replication - /people/sreekanth.babu2/blog/2005/02/23/value-mapping-replication
    Also see
    https://www.sdn.sap.com/irj/sdn/advancedsearch?query=value%20mapping%20in%20xi&cat=sdn_weblog
    /people/community.user/blog/2007/01/08/valuemapping-using-the-graphical-mapping-tool
    /people/alessandro.guarneri/blog/2006/03/27/sap-xi-lookup-api-the-killer
    https://www.sdn.sap.com/irj/sdn/advancedsearch?query=value%20mapping%20in%20xi&cat=sdn_weblog
    Regards
    Pradeep N

  • Message Mapping(Display queue and Suppress Value)

    Hi Experts,
    In Message Mapping(graphical mapping), upon checking the properties of the nodes,there's one property display queue, in which suppress is there??
    What does it mean?? Which queue it points and what value is suppressed??
    Thanks & Regards,
    Sushama

    Hi Sushama,
    SUPPRESS means no value.
    suppose we are checking one condition (tdid = "RE" then pass tdline) based on the condition we will send one output. if the condition fails then suppress value goes to the target.
    > What does it mean?? Which queue it points and what value is suppressed??
    es:  if(tdid.equals("WE") ifwithoutelse pass tdline value as output.    [tdid is in E1EDKA1 segment and this segment occurance is multiple]
    In this case if the condition is satisfied once and failed once (means E1EDKT1 segment comes 2 times) then first time it sends the corresponding tdline value and second time it sends the SUPPRESS value.
    Regards
    Ramesh

  • Message Mapping: Map value from the first element in a context in target el

    Hi experts,
    I have a problem with a message mapping in XI. I hope you can help me. At first I will give you a source and a target structure. Then I will explain the problem.
    <u>Source structure:</u>
    <E1EDP01>
       <E1EDPT1>
          <TDID> ... </TDID>
          <E1EDPT2>
             <TDLINE> ... </TDLINE>
          </E1EDPT2>
       </E1EDPT1>
    </E1EDP01>
    The structure can contain more than one E1EDP01-Elements, more than one E1EDPT1-Elements and more than one E1EDPT2-Elements.
    <u>target structure:</u>
    <LineItem>
       <vendmemo> ... </vendmemo>
    </LineItem>
    For every E1EDP01-Element my mapping creates one LineItem-Element in the target structure. To fill the element <vendmemo> the mapping should do the following steps:
    The mapping should search in E1EDP01 for a E1EDPT1 with the TDID = Z505. And from this E1EDPT1-Element (with the TDID=Z505) the mapping should take the value <TDLINE> from the first E1EDPT2-Element in the context of the E1EDPT1-Element (the E1EDPT1 with the TDID=Z505) and put this value in <vendmemo>.
    The mapping should do this action for every E1EDP01 -> so for every LineItem.
    I tried it with UDF but I didn't found a solution. Can anybody help me?
    best regards
    Christopher

    Hello experts,
    i was wrong ... my mapping isn't still working. I had created a test instance. and only for this test instance the mapping (see above) works.
    Can anybody help me? I'm trying the whole day but I can't find a solution. Here a second description of my problem:
    <u>Source Structure:</u>
    <E1EDP01>
       <E1EDPT1>
          <TDID> ... </TDID>
          <E1EDPT2>
             <TDLINE> ... </TDLINE>
          </E1EDPT2>
          <E1EDPT2>
             <TDLINE> ... </TDLINE>
          </E1EDPT2>
          <E1EDPT2>
             <TDLINE> ... </TDLINE>
          </E1EDPT2>
       </E1EDPT1>
    </E1EDP01>
    <E1EDP01>
       <E1EDPT1>
          <TDID> ... </TDID>
          <E1EDPT2>
             <TDLINE> ... </TDLINE>
          </E1EDPT2>
          <E1EDPT2>
             <TDLINE> ... </TDLINE>
          </E1EDPT2>
          <E1EDPT2>
             <TDLINE> ... </TDLINE>
          </E1EDPT2>
       </E1EDPT1>
    </E1EDP01>
    <u>Target Structure:</u>
    <LineItem>
       <vendmemo> ... </vendmemo>
    </LineItem>
    <LineItem>
       <vendmemo> ... </vendmemo>
    </LineItem>
    <u>Description of my Problem:</u>
    For each E1EDP01 in the source structure the mapping creates one LineItem in the target structure.
    The element "vendmemo" should be created in any case ... also if it will be empty.
    To fill the element "vendmemo" the mapping should search in E1EDP01 for a E1EDPT1 with the TDID=Z505. If there is an element E1EDPT1 with the TDID=Z505, the mapping should write the TDLINE from the first E1EDPT2 (under the element E1EDPT1 with the TDID=Z505) in the target field "vendmemo".
    The Problem is that TDLINE an TDID are not in the same context. I tried it with setting the context of both to E1EDP01. But it was not working ... have you any idea oder suggestion?
    Thank you very much
    best regards
    Christopher

  • Difference of FixValues and Value Mapping in Message Mapping

    Hi
    I would like to know the exact difference between the "FixValues" and Value Mapping. And the Scenarios of usage.
    If i use Value Mappings, value mappings more for fixed values or can they be used for business data that will change ?
    If the flow is from "Non SAP to SAP System" then if i maintain the "Value Mapping Tables" in Message Mapping, Do i need to maintain the same Value Mapping tables on SAP System. If this is the case, it will be over head of maintaining on both sides.
    More thankful if you clarify my doudt.
    Regards
    Shailaja

    Hi,
    your question is best explained in the following link(PDF).
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/9202d890-0201-0010-1588-adb5e89a6638
    Its given in the 75th page.
    >>If the flow is from "Non SAP to SAP System" then if i maintain the "Value Mapping Tables" in Message Mapping, Do i need to maintain the same Value Mapping tables on SAP System.
    I think this is not needed.its not needed to maintain value mapping tables in SAP system.
    hope this helps.
    regards,
    P.Venkat

  • Calling Message mapping Dynamically based on a field value

    Hi gurus,
    I have
    1 source inteface
    1 target interface
    3 Message mapping programs based on the 1 source and 1 Target Interfaces
    I need to decide Dynamically as which message mapping program should be called based on the Input provided by the source system.
    For example:
    If the souce side file sends a field value=1 then message mapping 1 should be called
    If the source side file sends a field value=2 then message mapping 2 should be used...
    Pls provide me help on this ASAP.

    As ur source and target structures are always same, u should have used same mapping with multiple conditions instead of using three different mappings.
    Right now for ur requirement, in ID -> standard Interface Determination, u can use multiple interface mappings based on condition.
    Check heading "Specifying Conditions (for Multiple Inbound Interfaces)" here
    http://help.sap.com/saphelp_nw04s/helpdata/en/42/ea20e737f33ee9e10000000a1553f7/content.htm
    Regards,
    Prateek

  • GlobalContainer object values acessed among UDF's  in message mapping ?

    hi
    i have scenario where i am using globalContainer variable functionality in my message mapping.
    in edit java section
    String usr;
    Container container ;
    GlobalContainer globalContainer ;
    intialize usr = "";
    in First UDF
    String inlogin_sess =  " ashutosh test value" ;
    globalContainer.setParameter(usr,inlogin_sess);
    return any value :
    now if i create another 2nd UDF and use :
    String  out =globalContainer.getParameter(usr);
    return out ;
    now 2nd UDF is giving null pointer exception...
    for testing the code functionality..
    IF i  use the  SET and GET in 1st UDF :
    globalContainer.getParameter(usr);   in 1st UDF than it is working sucessfully...
    globalContainer.setParameter(usr,inlogin_sess);
    String  out = globalContainer.getParameter(usr);
    return out ;
    in help.sap it is mentioned that Globalcontainer objects  values can be fetched   among UDF's in one message mapping....
    [http://help.sap.com/saphelp_nw04/helpdata/en/0f/80243b4a66ae0ce10000000a11402f/frameset.htm]
    i have gone a lot of thread in sdn where Global container are used like sequence no creation etc, but every where  the
    GET and SET are used in SAME UDF...
    any clue where is leak..
    Regards,
    ashutosh R

    Hi Abhishek
    Your point is legimate, but for my their is no such issue..
    even i try to use it as :see image..
    [http://www.screenshots.cc/show.php/14137_GlobalVariable.JPG.html]
    UDF1 :
    globalContainer.setParameter(usr,inlogin_sess);
    return any value :
    and in UDF2 
    String  out = globalContainer.getParameter(usr);
    return out ;
    mainting the sequence
    My concern is object globalContainer is local in UDF1, so it will through nullpointer ,if we try to access in UDF2.
    if we declare globalContainer   in edit jave -GlobalVariables also, still it is having the error..
    Regards
    AshutoshR

  • Multi-Message Mapping based on value of field - (Without BPM)

    Hi.
    I am having a bit of difficulty with multi-message mapping without BPM. I want to map to message1 & message2 based on a field in the rows of the source structure.
    e.g.
    row1-Source-Field1=> (if equal 0)   => <b>Message1</b>-field1.
    row2-Source-Field1=> (if equal 10) => <b>Message2</b>-field1.
    To attempt to do this, I use the conditions in the graphical mapper:
    if row-Source-Field1 = 0   => Map "Row to MessageType1".
    if row-Source-Field1 = 10 => Map "Row to MessageType2".
    However when I test this the mapping only seems to consider the first row value in row-Source-Field1 and ignores the fact that row two has a value of 10. I think this has something to do with contexts etc..
    I would appreciate any help please.
    Regards.
    Mick.

    in that case try this out
    row1-source-field1 (remove context) -- UDF -splitbyvalue-target
    UDF1(for message 1)
    for(int i=0;i<field1.length;i++)
    if(field1<i>.equals("0"))
    result.addValue(<field to be mapped><i>);
    UDF2(for message 2)
    for(int i=0;i<field1.length;i++)
    if(field1<i>.equals("10"))
    result.addValue(<field to be mapped><i>);

  • Message Mapping : conversion of source value 2,520,926.08 to 2,520,926

    Hi,
    The value coming from Idoc at source side is 6,999,432.08.
    I want the value to be passed at target side as 6,999,432
    I do not want .08
    How i will do the message mapping. Can someone help me out.
    Thanks,

    Ashish,
    I have tested this and all works as you expect.  I have also provided two examples due to confusion as to whether you want the decimal places.  You stated in an earlier post 'I do not want .08, i want .00' but in your last post that 'Source Value be 22345.45 or 22345.78 or 22345.99.........target value should be 22345'
    Two decimal places .00
    LHS field_in --> floor (arithmetic function) to give you the integer value required (rounded down) --> format number (second arithmetic function and indicate a format of 0.00 to represent two decimal places) --> RHS field_out
    Source       Target
    22345.45    22345.00 
    22345.78    22345.00
    22345.99    22345.00
    No decimal places (integer)
    LHS field_in --> floor (arithmetic function) to give you the integer value required (rounded down) --> RHS field_out
    Source       Target
    22345.45    22345 
    22345.78    22345
    22345.99    22345
    I hope this clears up your issue
    Regards,
    Mike

  • Get the value of Container element in message mapping

    Hi,
    Is it possible to read the value of container elements(bpm) in a UDF defined in message mapping. If yes, please tell me how?
    Thanks and regards,
    Siji

    Siji,
    Refer thread - Creating the container Object In Java Mapping
    Regards,
    Geetha

  • Get the mapping values from one message mapping into another message mappin

    Hi All,
    I created two graphical message mappings. In first message mapping i created one user defined function and set one global container parameter and I need to use this parameter in my second message mapping user defined function. But the global container parameters can be used in different user defined functions in same message mapping. So is there any way to use the values which are set in one message mapping into another message mapping. If yes, please help me how to get?

    Hi Koteswara rao,
      As you said global container parameters from first message mapping are not accessible from second message mapping program.
    i haven't faced situation like this.but, if you have some unmapped field in target message in first message mapping,you can put global variables data in that unmapped field.
    anyway the output of first message mapping would be input for 2nd messages mapping,so you can access global data(unmapped field filled with global data in 1st MM) from 2nd mapping program..
    Cheers,
    Jag

  • Copy value function in message mapping?

    can someone help me understand copy value function in message mapping???

    Hi,
    Here's a good example providen yesterday by Mark in a thread.
    [Re: different contexts to different targets]
    And here's SAP help: [http://help.sap.com/saphelp_nwpi71/helpdata/EN/26/d22366565be0449d7b3cc26b1bab10/content.htm]
    Then play...
    Mickael

  • Send Multiple field values to Single Target field in Message Mapping

    Hi,
    My  Requirement is to Map Multiple fields to Single field in Target side.I have to send all the values concatenated and pass the same to target Field in Message Mapping.
    We can use Concat function,but more that 15 fields are there.If using concat,the mapping will be complex.
    Is there any way to simplify this requirement or we can use any UDF for this,kindly suggest.
    Regards,
    Madhu

    >>>We can use Concat function,but more that 15 fields are there.If using concat,the mapping will be complex.
    I don't think it's complex but  just that it occupies more mapping area
    Just write a simple UDF - a one line code and pass all your input variables.
    return var1+var2+var3+var4+...+var15;

Maybe you are looking for

  • "oracm" shell we see this info on both nodes?

    We should see this information on both rac nodes or only one node?. I can see this information in node A but not on node B. On node B, i tryed to restart ocmstart.sh # $ORACLE_HOME/oracm/bin/ocmstart.sh ocmstart.sh: Error Restart is too frequent ocms

  • Itunes folder on ipod (video) is not visible in disk mode?

    I am trying to use my ipod as a disk drive to move its music to my desktop (had to reload XP on desktop and used ipod is the music backup). Following the instructions from ipod help (http://docs.info.apple.com/article.html?artnum=300173) works just f

  • Workflow Ideas for Certificates?

    I'm sure this would be really easy to find if I knew what it was called. We have a local competition, and I have to make certificates for all the winners in all the categories. I have 88 categories, 3 winners in each category, and a handful of ties.

  • Can't find burn button itunes 8

    Just installed iTunes 8. It states there is supposed to be a burn button in the lower right corner but I cannot find it. I only see buttons for hiding Genius sidebar & activating Genius. Any help to resolve this would be greatly appreciated!

  • Automator - assign random numbers to file names

    Hi, I have a digital photo frame. Unfortunately it doesn't have a 'random' setting, and therefore my photos all play in sequence. The second best thing would be to assign a random number to my photos before I transfer them to the photo frame! Would s