Message mapping - lower node condition for top node

Hello,
E1EDK03
     SEGMENT
     IDDAT
     DATUM
     UZEIT
I would like to have only the E1EDK03s, where IDDAT is 002. So I tried to do it this way on the E1EDK03 level:
Constant 002 and IDDAT --> equalS than E1EDK03-->E1EDK03. But somehow it doesn't work. I also attached a picture of my message mapping.
Would be nice if somebody could help me. 

Thx for your help. I tried it with Mr. Gandepallis approach and it worked perfectly.
3 E1EDK03 nodes - perfect.
Now I would like to take it a little further. Let's say I would like to have only the E1EDK03 for IDDAT 025 if QUALF 008 exists in the node above E1EDK03. I tried it with "equalS" and "And", but it's not working.
Would be nice if someone would have a solution for this. I really appreciate your help.

Similar Messages

  • Message Mapping: Douplicate Nodes of source XML

    Hi,
    I do some message mapping in the design. I've loaded a test XML into the test tab to actually see what's going on in my mapping. A piece of it looks like the following snippet (the REFERENCE element is also embedded in a whole bunch of other elements and yes, its correct, that AUTHOR and YEAR elements appear nested in themselves):
    <REFERENCE>
      <set>
        <AUTHOR>
          <AUTHOR>Test Author 1</AUTHOR>
        </AUTHOR>
        <YEAR>
          <YEAR>2000</YEAR>
        </YEAR>
      </set>
      <set>
        <AUTHOR>
          <AUTHOR>Test Author 2</AUTHOR>
        </AUTHOR>
        <YEAR>
          <YEAR>2001</YEAR>
        </YEAR>
      </set>
    </REFERENCE>
    I've placed the lowest AUTHOR element in the design pane, I right click it, set the context to "AUTHOR" (the surrounding AUTHOR element obviously), an then click on "Show queue" I get all AUTHOR elements double. I.e. I get "Test Author 1" twice and "Test Author 2" twice.
    Ok, I thought probably something I don't understand concerning contexts, so I added "removeContexts" after the AUTHOR node. Surprise: I get "Test Author 1" once and "Test Author 2" twice when I click on "Show queue" on "removeContexts".
    As this behaviour is getting worse, the more mapping steps I arrange in a chain, the mapping becomes quite useless, until I can resolve this issue...
    Anybody an idea, why my "Test Authors" get listed twice and why "removeContexts" doesn't work as expected?
    Tnx,
    Martin.

    You will see the value in queue twice for AUTHOR because the first one in white is the actual value and the second one in gray is the context change. Similarly when you do remove context and see the queue, you will see TestAuthor1 Test Author2 and again TestAuthor2 which is the context.
    Regards,
    Ravi

  • Condition for Top 10 no longer working with 2 Characteristics

    Hi experts, we have a query within a workbook with a condition set on 2 characteristics to show the top ten.  When we refresh this now it shows incorrect results as it unticks one of the characteristics in the condition.  We then have to go back to the condition set up and tick the one it unticked and it refreshes okay.  We don't want to have to do this each time.  (This worked for us prior to applying patches.  We are on Patch 18, Bex Analyzer BI Add-On 7.X based on 7.10, Support package 7, patch 1 version 1352.)
    We can't find any SAP Note to correct this?
    Any help you can offer would be great.
    Thanks.
    N

    Hi,
    I too have faced problem with conditions.As a thumb rule if i apply(assaign) the condition for the last characteristics in the tab rows (or last charactristic added in rows) giving fine results.
    Try to apply and check it may work....
    Regards,
    anil

  • ESR: Message mapping tab is missing for my user id.

    Friends,
    I am not able to see Message mapping tab in ESR under namespace.
    This issue is only with my user id.
    Can you suggest if some roles required , or I can contact Basis guys for this.
    Thanks,
    Divyesh

    Hi check below URL,before that you can compare your user id roles with other user id .then you can easily know that,, use SU01 tx for the same.
    http://www.erpgenie.com/sap/netweaver/xi/xiauthorizations.htm
    Regards,
    Raj

  • RFC Lookup's in message mapping fail with RuntimeException for no reason

    Hi guys,
    We have developed interfaces that execute a lot of RFC's from Message Mapping, by making use of RFC Lookup API.
    In ID, in the corresponding RFC Receiver Communication Channel we have set the number of maximum connections to 100.
    However, when a big number of Idocs with lots of items is sent to XI some messages fail in XI because mapping fails with a runtime exception that is not correct, since there is a return value found from the execution of the RFC function. And when I am testing the mapping in Test mode of XI IR, the mapping is executed successfully.
    Do you think that by increasing the maximum number of connections in Communication Channel, it will take effect?
    Evaggelos

    Hi Evaggelos,
    DECREASE, may be til 10.
    Regards,
    Udo

  • Message mapping for checking hyphens (-) in material number

    Hi All,
    I have an interface in PI 7.1 for product change and product create coming from ORACLE to SAP
    Now, the reqmt is to take the ORACLE product which could have hyphens or without hyphens
    In SAP, the product can have upto 40 characters and if something without hyphens come in, then it adds leading zeros while creating and while changing, SAP expects a product with leading zeros
    So, how do I handle this? How do I check in message mapping, the product with hyphens or without and write a condition to it.
    Here is my idea
    Take the product, use a message mapping function to check for products without hyphens and if YES, add leading zeros upto 40 characters
    Can anyone let me know how this could be achieved using message mapping function
    I am sure this kind of reqmt especially leading zeros for products is very common in PI interface circle
    So, please let me know the details
    Thx
    mike

    Hi Mike,
                  your requirement can be solved without UDF too
    inputfield ---------------->
                                                 indexOf() ------------>  
    Constant(-)---------->                                                  less---->if ----->target field                                                                               
    constant(0)---------->
    inputfield  and contant (hyphen) are inputs to standard text function indexOf. Output of IndexOF and constant(zero) are inputs to standard arithmetic function less. Out put of less goes to boolean function if. The IF has two inputs then and else .
    For then part write this logic
    inputfield----> formatNumber()---->then
    in standard arithmetic function Formatnumber  specify number format with 40 zeroes, leave decimal separetor blank.
    Now for the else part of "IF" write this
    inputfield----->else
    Finally
    output of "IF" goes to target field
    IF------>target
    Regards
    Anupam

  • What is considered low light condition?

    What is considered low light condition for the keyboard? I'm in a room with 2 bright led tube lights and the keyboard light is still on? i had to manually turn it off

    The light sensor can be turned on and off in the Keyboard and Mouse system preference pane and the Display preference pane. The sensor is located to the left of the iSight Camera on the top of the screen bezel.
    A low light condition is when the light sensor can't see light. Now the problem with the new MacBooks is that the light sensor is on the screen not the keyboard. So you have to have light shining on the screen for the keyboard to turn off. Even if you have a desk lamp shining on your computer, the keyboard light will still be on because it is short range and cannot see the light.
    ~ Harris

  • How to find the name of message mapping

    Hi folks
    i want to check the name of message mapping  which is used at run time. i can find the name of Interface mapping name in trace of message in SXMB_MONI.
    but i am not able to find the MM name.
    can some one help me .....
    Regards
    Gagan

    > but i am not able to find the MM name.
    You will find your message mapping name as class name in the pipeline step Request Message Mapping.  Please search for interface mapping and below which you will find the mapping name as this format...
    <Trace level ='"3" type="T"> Mapping steps 1 JAVA_JDK 
    com/sap/xi/tf/_<your mapping name> </Trace>
    Example as similar below...

  • Using useOneAsMany function in Message Mapping if subtree is optional

    Hi,
    I am trying to develop a message mapping for the following case:
    In the source message, there is a value "Value1" which is on the same level as a subtree "Struct2" which can occur 0..unbound times
    In the target message the value "Value1" has to be part of that subtree, so it has to be copied for each occurence of "Struct2" in the source message
    For the case that the subtree has cardinality 1..n there are some examples on the web, e.g. useOneAsMany (SAP-Bibliothek - Partner Connectivity Kit). But that does not fit my case. The subtree in the source message is optional here.
    See a screenshot of the message mapping and my solution for the mapping of "Value1" below:
    All other values are mapped 1:1.
    Sadly, this solution does not work when "Struct2" has cardinality 0..unbound, for 1..unbound it works perfectly. Here is my example:
    When I try the mapping, I get the following error message:
    That is true. The first queue of the useOneAsMany function has more values than the second. But I don't know how I can fix it, so that it works for my example. Can anyone give me a hint please?
    Setup is AEX 7.31.

    Hi Stefan,
    You can use this mapping.
    And for Struct2-Value1
    Result:
    Hope this helps,
    Mark

  • Exchanging data between interface mapping and message mapping possible?

    Hi,
    please have a look at my interface mapping:
    source message -
    >
    mapping programs
    1. Java mapping
    2. XSL mapping
    3. message mapping
    > target message
    in my scenario a Java Class (1) is called for the interface mapping. There, some information ist read from the xml structure. Next, a xslt mapping (2) takes place that strips some information. The remaining data is passed to the message mapping (3)
    The reason for this is that the source message consists of a xml message inside an xml message.
    I am looking for a way to access the informationen gained in step 1 (Java class) in the message mapping (step 3). I was hoping that the global container (used by user-defined function within message mapping) is accessible from the java mapping, but I could not find out how.
    Anybody with some ideas how to pass information from step 1 to step 3? I cannot put the Information in the xml that is passed to the message mapping, because the schema of the inner xml cannot be changed.
    Thanks very much, best regards,
    Wolfgang

    Hi Wolfgang!
    I have used the "Dynamic Configuration" section in the XI Message header for this issue. You could write something into the Dynamic Configuration Section in step 1 (Java-Mapping) and read it out again in steps 2 or 3. You could use a section for a adapter you are not using in your interface for the real receiver. So if you have a File-Receiver Adapter at the "end" you could use some section of the e.g. SOAP adapter not to interfere with your receiver-adapter when using Dynamic Configuration Settings there ...
    See also: http://help.sap.com/saphelp_nw04/helpdata/de/43/09b16006526e72e10000000a422035/content.htm
    or
    http://help.sap.com/saphelp_nw04/helpdata/de/43/0a7d1be4e622f3e10000000a1553f7/content.htm
    Best regards,
    Andi

  • 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

  • ABAP routine for Top 10 material

    Hi All,
    I want to write an ABAP routine to get the Top 10 material as per their sales data.
    I have written a query where I have put condition (for Top 10).
    But I need to create an APD taking this query as base query. But conditions fail to filter data when it comes into a transactional ODS via an APD.
    So, I want to write a routine for transaformation of data (to get top 10 material based on their sales data) from base query to the transactional ODS.
    Please help me in writing this code.
    I am an amatuer in ABAP.
    Thanks,
    SB

    Hi ,
    You Need to read Data from the ODS for Top 10 Materials. I can give you the Logic but you would need to take the Help of an ABAPPER to convert this into the code
    Lets consider an ODS : ZODS which has a KF for Sales Data (ZKF)
    *****Define Internal Table ****************
    TABLES :
    /BIC/AZODS
    DATA:
    BEGIN of ITAB OCCURS 0,
        0material(18)       TYPE c,
        ZKF           like /bic/AZODS-/bic/ZKF,
    END OF ITAB.
    DATA:
    BEGIN of ITAB1 OCCURS 0,
        0material(18)       TYPE c,
        ZKF           like /bic/AZODS-/bic/ZKF,
    END OF ITAB1.
    Select MATERIAL, /BIC/ZKF from /BIC/AZODS into corresponding fields of ITAB1.
    LOOP AT ITAB1
    ITAB-MATERIAL = ITAB1-MATERIAL
    ITAB-ZKF= ITAB1-ZKF
    COLLECT ITAB.
    ENDLOOP.
    SORT ITAB ZKF.
    ************this will have the materials sorted take the first 10 Material Nos*****

  • Runtime Exception in Message mapping transformation.

    hi Experts,
    i did IDOC(MATMAS05) to File scenario.
    if i tested the mapping in IR (Test tab), its working fine.
    but when i triggered the IDOC from SAP R/3 system, it reaches to SAP PI and showing Mapping falure in SXMB_Moni.
    then i took the payload from the MONI, and tesed with this payload in Mapping test tab in IR.
    there it is showing as java null pointer exception.
    can anybody tell me what is the problem here?
    thanks,
    kumar

    Hi,
    I think the required fields might not be occuring, if it occurs it might not have contianed any values thats the reason why message mapping is failing. For required fields you might have done some transformations which will not work if source required field has no values in it.
    So kindly check and correct.
    Regards,
    Chandra.

  • Standard Query for Top 10 queries and Users

    Hi Experts,
    Is there any query which gives the details like ,
    1. Top 10 queries executed in a month
    2. Top 10 users ( By no of queries executed )
    Regards,
    Bhadri M.

    1. Top 10 queries executed in a month
    Use Query 0TCT_MCA1_Q0142.
    In this report you will have to filter variable BI Object to Queries and also it gives stats for the last 30 days, you have have to remove the SAP User exit variable in case you do not want to use the 30 days option. And then you will have to define Condition for Top 10.
    2. Top 10 users ( By no of queries executed )
    Use Query 0TCT_MCA1_Q0141.
    Similarly you have to modify this query.
    -Neelesh

  • Use Message Mapping to repeat top node and split Message

    I am currently using XSLT Messaging to do majority of the mapping. I have two issues that remain, I need to repeat the top node for each or its child elements and split the message.
    <Sensor xmlns="namespace">
      <Observation>
        <XML>Some Data</XML>
    </Observation
    </Sensor>
    1. Can it be done in XSLT? I posted a thread asking for help on this. Where I would need to repeat the Sensor tag for each observation. If this is possible then I will able to split the messages at the HTTP adapter used for the target system.
    2. Can Message Mapping be used. Using the same xsd on both source and target systems, Will sensor repeat if set to 1:n and observation set to 1:1. In source it is Sensor 1:1, Observation 1:n.  If this works then I can use a BPM to shoot out individual messages using a for each.
    Any help is greatly appreciated. I am fairly new to XI as this is my first major project. Thanks

    Source File                                             Target File
    > XI (XSLT) -
    > Each observation as one file  ---> Out via HTTP
    Batch of all orders    
    Source File
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <receipt>
      <manufacturer>Manufacture Name</manufacturer>
      <manufacturer_gln>999999</manufacturer_gln>
      <transfer_recipt>0123456</transfer_recipt>
      <prod>
        <product_GTIN>99999999999999</product_GTIN >
        <product_LOT>123456A</product_LOT >
        <production_date>20090131</production_date>
        <expire_date>20120131</expire_date>
        <carrier>
          <carrier_type>P</carrier_type>
          <carrier_barcode>001</carrier_barcode>
          <carrier_detail>
            <carrier>
              <carrier_type>C</carrier_type>
              <carrier_barcode>01</carrier_barcode>
              <carrier_detail>
                <carrier><carrier_type>ITEM</carrier_type><carrier_barcode>0108699547010089211</carrier_barcode></carrier>
                <carrier><carrier_type>ITEM</carrier_type><carrier_barcode>0108699547010089212</carrier_barcode></carrier>
                <carrier><carrier_type>ITEM</carrier_type><carrier_barcode>0108699547010089213</carrier_barcode></carrier>
                </carrier_detail>
            </carrier>
            <carrier>
              <carrier_type>C</carrier_type>
              <carrier_barcode>02</carrier_barcode>
              <carrier_detail>
                <carrier><carrier_type>ITEM</carrier_type><carrier_barcode>0108699547010089214</carrier_barcode></carrier>
                <carrier><carrier_type>ITEM</carrier_type><carrier_barcode>0108699547010089215</carrier_barcode></carrier>
                <carrier><carrier_type>ITEM</carrier_type><carrier_barcode>0108699547010089216</carrier_barcode></carrier>
                </carrier_detail>
            </carrier>
          </carrier_detail>
        </carrier>
        <carrier>
          <carrier_type>P</carrier_type>
          <carrier_barcode>002</carrier_barcode>
          <carrier_detail>
            <carrier>
              <carrier_type>C</carrier_type>
              <carrier_barcode>03</carrier_barcode>
              <carrier_detail>
                <carrier><carrier_type>ITEM</carrier_type><carrier_barcode>0108699547010089217</carrier_barcode></carrier>
                <carrier><carrier_type>ITEM</carrier_type><carrier_barcode>0108699547010089218</carrier_barcode></carrier>
                <carrier><carrier_type>ITEM</carrier_type><carrier_barcode>0108699547010089219</carrier_barcode></carrier>
              </carrier_detail>
            </carrier>
            <carrier>
              <carrier_type>C</carrier_type>
              <carrier_barcode>04</carrier_barcode>
              <carrier_detail>
                <carrier><carrier_type>ITEM</carrier_type><carrier_barcode>0108699547010089220</carrier_barcode></carrier>
                <carrier><carrier_type>ITEM</carrier_type><carrier_barcode>0108699547010089221</carrier_barcode></carrier>
               </carrier_detail>
            </carrier>
          </carrier_detail>
        </carrier>
      </prod>
    </receipt>
    Target File
    <?xml version="1.0" encoding="UTF-8"?>
    <pmlcore:Sensor xmlns:pmlcore="urn:autoid:specification:interchange:PMLCore:xml:schema:1" xmlns:pmluid="urn:autoid:specification:universal:Identifier:xml:schema:1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:autoid:specification:interchange:PMLCore:xml:schema:1 cases.xsd">
      <pmluid:ID>GPO_AI_LU_DC</pmluid:ID>
      <pmlcore:Observation>
        <pmlcore:DateTime>2008-10-13T17:53:00.265+02:00</pmlcore:DateTime>
        <pmlcore:Command>PACK</pmlcore:Command>
        <pmlcore:Tag>
          <pmluid:ID>01</pmluid:ID>
          <pmlcore:Data>
            <pmlcore:XML>
              <Memory>
                <DataField fieldName="EXPIRATION_DATE">20120131</DataField>
                <DataField fieldName="BATCH_ID">123456A</DataField>
                <DataField fieldName="ZMFG_DATE">20090131</DataField>
                <DataField fieldName="ZMFG_GLN">999999</DataField>
                <DataField fieldName="ZMANUFACTURER">Manufacture Name</DataField>
                <DataField fieldName="ZITEM_COUNT">16</DataField>
                <DataField fieldName="ZWORK_ORDER_NUMBER">0123456</DataField>
              </Memory>
            </pmlcore:XML>
          </pmlcore:Data>
        </pmlcore:Tag>
        <pmlcore:Tag>
          <pmluid:ID>0108699547010089211</pmluid:ID>
          <pmlcore:Data>
            <pmlcore:XML>
              <Memory>
                <DataField fieldName="EXPIRATION_DATE">20120131</DataField>
                <DataField fieldName="BATCH_ID">123456A</DataField>
                <DataField fieldName="ZMFG_DATE">20090131</DataField>
                <DataField fieldName="ZMFG_GLN">999999</DataField>
                <DataField fieldName="ZMANUFACTURER">Manufacture Name</DataField>
                <DataField fieldName="ZWORK_ORDER_NUMBER">0123456</DataField>
              </Memory>
            </pmlcore:XML>
          </pmlcore:Data>
        </pmlcore:Tag>
         </pmlcore:Observation>
         </pmlcore:Sensor>
    I have the XSLT Mapping working to transform data from Source file to target File. But my target file has multiple Observations that need to be split into the Sensor, Observation structure.

Maybe you are looking for

  • Suggestions for new features and improvements for Garageband

    Hi, I posted this to iCompositions but don't know who would be exposed to it as far as Apple goes. Just thought I would list a sort of wish list for GB that would make a huge difference for me. Most are just basic interface improvements and changes.

  • How to retrieve values from Dynamic Selection screen while using LDB  - PSJ

    I am having problem in PSJ Logical database. In a custom report which is using PSJ LDB, we are using PROJ and PRPS_R tables. When I run program it displays one dynamic selection screen, there we are giving selection criteria for PRPS (Master data WBS

  • X6: I killed it. I am free

    Like many others here, I have been a loyal Nokia customer for many years. Through thick and thin (literally) I have learned to work around the odd bug in firmware and found the various devices I've owned (6110 was the first I think, 8110, 8210 etc. a

  • Creating batch for all materials

    Hi Experts, is it possible to create ONE batch number for all Items. It will be used for batch scrapping or something. For example , If we have some pieces from a few materials i will make transfer posting Batch to this common Batch, which I have alr

  • Installation of Business content  and activation

    Hello, Our Source system is ECC 6.0 and BW :NW2004 S and SAP NetWeaver BI 7.0 . We are able to create source system conection successfully . after installing the business content and replication, all the data souces in BW are still in Version D only.