Message-Mapping: nested Loops over Elements

Hi Experts,
I have problems with my Message-Mapping in the IR. I have a source and a target structure. In the following I will give you easy examples of these structures:
<u>source structure:</u>
   <E1EDP01>
      <E1EDP19>
         <QUALF> ... </QUALF>
         <IDTNR> ... </IDTNR>
      </E1EDP19>
      <E1EDP19>
         <QUALF> ... </QUALF>
         <IDTNR> ... </IDTNR>
      </E1EDP19>
   </E1EDP01>
   <E1EDP01>
      <E1EDP19>
         <QUALF> ... </QUALF>
         <IDTNR> ... </IDTNR>
      </E1EDP19>
      <E1EDP19>
         <QUALF> ... </QUALF>
         <IDTNR> ... </IDTNR>
      </E1EDP19>
   </E1EDP01>
<u>target structure:</u>
<LineItem>
   <IDTNR></IDTNR>
</LineItem>
<LineItem>
   <IDTNR></IDTNR>
</LineItem>
That means:
For every <E1EDP01> in the source structure I create one <LineItem> in the target structure. One E1EDP01-Element can contain more than one E1EDP19-Elements. I have to loop over these E1EDP19-Elements, because I have to locate the Element <QUALF> with a given (fixed) value. The Mapping should put the value from the Element <IDTNR> from the source structure - where the QUALF-Element has this given value - in the IDTNR-Element of the target structure.
I tried it with a UDF, but only the first <IDTNR> in the target structure got filled.
Thanks for your help
Christopher

Thank you,
but how I can set the Elements IDTNR and QUALF to the context E1EDP01?
In the splitByValue-Function do I need "each value"?
best regards
Christopher

Similar Messages

  • Changing datatype, afterwards Message-Mapping cannot produce target element

    Hi,
    we use PI/700.
    I changed a working system by changing a datatype of an existing message (adding a new element). My interface mapping contains two mappings: an XSL-Mapping and afterwards a Message-Mapping.
    My interface mapping looks like this:
    Message-Type A ->
          XSL-Mapping ->
    Message-Type B ->
          Message-Mapping ->
    Message-Type B
    When I test each mapping alone everything works fine (with the new element I added).
    But if I test my interface mapping in IBD with both mappings together, I'll get an error:
    "Cannot produce target element /MT_EDM_OUTBOUND_LASTGANG_TO_SAP/LASTGANG/MASSEINHEIT. Check xml instance is valid for source xsd and target-field mapping fulfills requirements of target xsd".
    Is it possible that XI has problems in refreshing the XSDs?
    I tried this:
    (1) I changed my Message-Mapping and now all elements are mapped 1:1 -> no success!
    (2) Later I changed my Message-Mapping and build in "exists" with "if" to check whether the element "MASSEINHEIT" is generated by the XSL-Mapping -> It doesn't exists (??? - WHY? - when I test it, everything works fine)
    (2) Afterwards I changed my interface mapping and take only the XSL-Mapping (without the following Message-Mapping) -> the element "MASSEINHEIT" exists now!
    I'm totally confused!
    Any ideas?
    Regards
    Wolfgang Hummel

    Hi,
    If you have made structural changes to the data type..such as number of fields have decreased/increased..or some new fld altogether, then you have to activate the datatype..goto message mapping and then re-do the mapping...but if you have made "typo" changes like names have been changed, etc..then i think it should be alrite..i have sometimes made changes to my datatype, but after activating it, i had to redo the mapping..that was it!...the rest would fall into place:) No changes had to be made in the interface mapping..
    Regards,
    Sushumna

  • BPM Message Mapping: "Cannot produce target element /ns1:BAPI...."

    Hi,
    A scenario File - BPM - BAPI call was developed, as described in blog 'RFC scenario using BPM' cfr. link
    /people/arpit.seth/blog/2005/06/27/rfc-scenario-using-bpm--starter-kit
    The Mapping is as follows:
    MT_EDB_MATERIAL_REQ (1:1) --> BAPI_MATERIAL_EXISTENCE_CHECK (1:1)
    MATNR (1:1) -
    > MATERIAL (1:1)
    When executing the scenario, an error appears in the trace of SXMB_MONI, step 'Request Message Mapping'
    Cannot produce target element /ns1:BAPI_MATERIAL_EXISTENCECHECK. Check xml instance is valid for source xsd and target-field mapping fulfills requirements of target xsd....
    I tried the following:
    1) import the XML-file into the testmapping: executed successfully
    File:
    <?xml version="1.0" encoding="UTF-8"?>
    <ns0:MT_EDB_MATERIAL_REQ xmlns:ns0="http://agfa.com/SD_EDB">
    <MATNR>15P6X</MATNR>
    </ns0:MT_EDB_MATERIAL_REQ>
    2) Removed the mapping on node level and left mapping only on element level (material): same error
    3) Activated the message mapping, interface mapping, determinations, etc again...:same error
    4) Removed the Interface Mapping and created it again: same error
    5) Compared the version ID of the Interface Mapping/message mapping in the Monitor trace with the version ID of the IR and saw that there was a difference.
    After the CPA full cache, SXI_CACHE full refresh and object refresh in the IB Administration, the differences remain, and also the error....
    Anybody an idea ?

    Hi
    >>>Cannot produce target element /ns1:BAPI_MATERIAL_EXISTENCECHECK. Check xml instance is valid for source xsd and target-field mapping fulfills requirements of target xsd....
    The error clearly says that one of the occurrence value  for the target node mentioned is not coming from the source during mapping. The easiest way to solve the problem is as follows
    <b>
    First Execute the mapping as pointed out by "Raj" and the following steps.
    </b>
    1. Goto the Mapping Editor
    2. Double click on the target node that is causing the problem here BAPI_MATERIAL_EXISTENCECHECK.
    3.  Right click on the same node and select "DisplayQueue".
    4. View the Queue.
    5. YOu will find "Suppress" entries, which means a value is expected but no value is coming in.
    6.Go from right to left and check each node in the mapping and you will be able to trace where the suppress node comes from and take appropriate action
    regards
    krishna

  • Why optimizer prefers nested loop over hash join?

    What do I look for if I want to find out why the server prefers a nested loop over hash join?
    The server is 10.2.0.4.0.
    The query is:
    SELECT p.*
        FROM t1 p, t2 d
        WHERE d.emplid = p.id_psoft
          AND p.flag_processed = 'N'
          AND p.desc_pool = :b1
          AND NOT d.name LIKE '%DUPLICATE%'
          AND ROWNUM < 2tkprof output is:
    Production
    call     count       cpu    elapsed       disk      query    current        rows
    Parse        1      0.01       0.00          0          0          4           0
    Execute      1      0.00       0.01          0          4          0           0
    Fetch        1    228.83     223.48          0    4264533          0           1
    total        3    228.84     223.50          0    4264537          4           1
    Misses in library cache during parse: 1
    Optimizer mode: ALL_ROWS
    Parsing user id: 108  (SANJEEV)
    Rows     Row Source Operation
          1  COUNT STOPKEY (cr=4264533 pr=0 pw=0 time=223484076 us)
          1   NESTED LOOPS  (cr=4264533 pr=0 pw=0 time=223484031 us)
      10401    TABLE ACCESS FULL T1 (cr=192 pr=0 pw=0 time=228969 us)
          1    TABLE ACCESS FULL T2 (cr=4264341 pr=0 pw=0 time=223182508 us)Development
    call     count       cpu    elapsed       disk      query    current        rows
    Parse        1      0.01       0.00          0          0          0           0
    Execute      1      0.00       0.01          0          4          0           0
    Fetch        1      0.05       0.03          0        512          0           1
    total        3      0.06       0.06          0        516          0           1
    Misses in library cache during parse: 1
    Optimizer mode: ALL_ROWS
    Parsing user id: 113  (SANJEEV)
    Rows     Row Source Operation
          1  COUNT STOPKEY (cr=512 pr=0 pw=0 time=38876 us)
          1   HASH JOIN  (cr=512 pr=0 pw=0 time=38846 us)
         51    TABLE ACCESS FULL T2 (cr=492 pr=0 pw=0 time=30230 us)
        861    TABLE ACCESS FULL T1 (cr=20 pr=0 pw=0 time=2746 us)

    sanjeevchauhan wrote:
    What do I look for if I want to find out why the server prefers a nested loop over hash join?
    The server is 10.2.0.4.0.
    The query is:
    SELECT p.*
    FROM t1 p, t2 d
    WHERE d.emplid = p.id_psoft
    AND p.flag_processed = 'N'
    AND p.desc_pool = :b1
    AND NOT d.name LIKE '%DUPLICATE%'
    AND ROWNUM < 2
    You've got already some suggestions, but the most straightforward way is to run the unhinted statement in both environments and then force the join and access methods you would like to see using hints, in your case probably "USE_HASH(P D)" in your production environment and "FULL(P) FULL(D) USE_NL(P D)" in your development environment should be sufficient to see the costs and estimates returned by the optimizer when using the alternate access and join patterns.
    This give you a first indication why the optimizer thinks that the chosen access path seems to be cheaper than the obviously less efficient plan selected in production.
    As already mentioned by Hemant using bind variables complicates things a bit since EXPLAIN PLAN is not reliable due to bind variable peeking performed when executing the statement, but not when explaining.
    Since you're already on 10g you can get the actual execution plan used for all four variants using DBMS_XPLAN.DISPLAY_CURSOR which tells you more than the TKPROF output in the "Row Source Operation" section regarding the estimates and costs assigned.
    Of course the result of your whole exercise might be highly dependent on the actual bind variable value used.
    By the way, your statement is questionable in principle since you're querying for the first row of an indeterministic result set. It's not deterministic since you've defined no particular order so depending on the way Oracle executes the statement and the physical storage of your data this query might return different results on different runs.
    This is either an indication of a bad design (If the query is supposed to return exactly one row then you don't need the ROWNUM restriction) or an incorrect attempt of a Top 1 query which requires you to specify somehow an order, either by adding a ORDER BY to the statement and wrapping it into an inline view, or e.g. using some analytic functions that allow you specify a RANK by a defined ORDER.
    This is an example of how a deterministic Top N query could look like:
    SELECT
    FROM
    SELECT p.*
        FROM t1 p, t2 d
        WHERE d.emplid = p.id_psoft
          AND p.flag_processed = 'N'
          AND p.desc_pool = :b1
          AND NOT d.name LIKE '%DUPLICATE%'
    ORDER BY <order_criteria>
    WHERE ROWNUM <= 1;Regards,
    Randolf
    Oracle related stuff blog:
    http://oracle-randolf.blogspot.com/
    SQLTools++ for Oracle (Open source Oracle GUI for Windows):
    http://www.sqltools-plusplus.org:7676/
    http://sourceforge.net/projects/sqlt-pp/

  • Problem with Message-Mapping: Loop over Elements possible?

    Hi all,
    I want do create a Message-Mapping for an IDoc-to-File Scenario. In the Source Structure there are some Elements which can appear more than once (1..unbounded). I need a mechanism which loops over these elements and search for specified values. From the Element which contains an element with this specified value the mapping should write a value in the target structure.
    Here a simple example (source structure) for better understanding:
    <root>
       <invoice>
          <number> 10 </number>
          <sum> 200.00 </sum>
       </invoice>
       <invoice>
          <number> 20 </number>
          <sum> 150.00 </sum>
       </invoice>
       <invoice>
          <number> 30 </number>
          <sum> 120.00 </sum>
       </invoice>
    </root>
    Now the duty of the Mapping should be to search in the elements <invoice> for the number 30. And then the sum of the invoice with the number 30 should be written in a field of the target structure.
    I tried it out with a constant togehter with an equalsS-function and an ifWithoutElse-function, but it is working only then, if the invoice with the number 30 has the first position in the root context.
    Can anybody help me? Thanks
    With kind regards
    Christopher

    Hi,
    Write a UDF to sum the required values and map to target node.
    See while writing the UDF select the type as queue.
    number -- removecontext-UDF targetnode
    sum----removecontext--/
    number abd sum or the two inputs
    in UDF
    int nsum = 0;
    for(int i;i < number.length;i++){
      if number(i).equals("30") then
         nsum = nsum + valueOf(sum(i));
    result.addValue(nsum); // convert the nsum into string
    Regsrds
    Chilla

  • Message Mapping - Filter on parent element

    Hi,
    I'm using message mapping for mapping IDoc ORDERS05 to flat file.
    This is the source structure :
    ORDERS05  1..1
    ---- IDOC  1..1
         ---- E1EDKT1  0..99
              ---- TDID  0..1
              ---- TSSPRAS_ISO
              ---- E1EDKT2  0..9999999
                   ---- TDLINE  0..1
    and this is the target structure :
    TCD 1..1
    ---- TCT  1..unbounded
         ---- TDID
         ---- TDSPRAS
         ---- TDLINE
    Can anybody help me about how to do the mapping for having 1 TCT element for each
    E1EDKT2 element with parent (E1EDKT1) having field TDID equals to the constant "ZALO" ?
    For exemple:
    <ORDERS05>
       <IDOC>
          <E1EDKT1>
             <TDID>ZALO</TDID>
             <TSSPRAS_ISO>tdspras1</TSSPRAS_ISO>
             <E1EDKT2>
                <TDLINE>tdline11</TDLINE>
             </E1EDKT2>
             <E1EDKT2>
                <TDLINE>tdline12</TDLINE>
             </E1EDKT2>
          </E1EDKT1>
          <E1EDKT1>
             <TDID>unused</TDID>
             <TSSPRAS_ISO>tdspras2</TSSPRAS_ISO>
             <E1EDKT2>
                <TDLINE>tdline2</TDLINE>
             </E1EDKT2>
          </E1EDKT1>
          <E1EDKT1>
             <TDID>ZALO</TDID>
             <TSSPRAS_ISO>tdspras3</TSSPRAS_ISO>
             <E1EDKT2>
                <TDLINE>tdline3</TDLINE>
             </E1EDKT2>
          </E1EDKT1>
       </IDOC>
    </ORDERS05>
    must result in :
    <?xml version="1.0" encoding="UTF-8"?>
    <TCD>
         <TCT>
              <TDID>ZALO</TDID>
              <TDSPRAS>tdspras1</TDSPRAS>
              <TDLINE>tdline11</TDLINE>
         </TCT>
         <TCT>
              <TDID>ZALO</TDID>
              <TDSPRAS>tdspras1</TDSPRAS>
              <TDLINE>tdline12</TDLINE>
         </TCT>
         <TCT>
              <TDID>ZALO</TDID>
              <TDSPRAS>tdspras3</TDSPRAS>
              <TDLINE>tdline3</TDLINE>
         </TCT>
    </TCD>
    Thanks in advance,
    Laurence

    Hi,
    When implementing your solution, I get only 1 TCT per E1EDKT01 (and no more loop on E1EDKT02) and filter on "ZALO" TDID is not working.
    <TCT>
         <TDID>ZALO</TDID>
         <TDSPRAS>tdspras1</TDSPRAS>
         <TDLINE>tdline11</TDLINE>
    </TCT>
    <TCT>
         <TDID>unused</TDID>
         <TDSPRAS>tdspras2</TDSPRAS>
         <TDLINE>tdline2</TDLINE>
    </TCT>
    <TCT>
         <TDID>ZALO</TDID>
         <TDSPRAS>tdspras3</TDSPRAS>
         <TDLINE>tdline3</TDLINE>
    </TCT>
    I have changed context of TDID to ORDERS05, and context of E1EDKT2 to ORDERS05 too.  Aren't thoses contexts correct?
    Laurence

  • Error in message mapping - Cannot produce target element

    As one step in my integration process, I am builing a very simple file to BPM integration (inbound MI async, outbound MI abstract).
    The source type and the target type are completely equal - I am only doing some modifications to some of the content.
    The type for both messages - source & target message - is an imported external definition (DTD), and hence no DT or MT are created.
    As a first step I am trying to fill the target message with the content from the source message (without any modifications to the content). However, when testing this in the message mapping area, I get an error message already when filling the first element, the 'root node'.
    The error message is as follows:
    Start of test
    Compilation of <MM name> successful
    Cannot produce target element <elementname>. Check xml instance is valid for source xsd and target-field mapping fulfills requirements of target xsd Cannot produce target element <elementname>. . Check xml instance is valid for source xsd and target-field mapping fulfills requirements of target xsd
    End of test
    Any suggestions?
    Thanks,
    C

    Thanks,
    when creating the source message manually in the MM it worked - so nothing wrong with the mapping.
    I saved this file and compared with the "original file" - containing the content which I wanted to upload, and on which the xsd (external definition) was based - and there where some inconsistancies.
    I changed some values in the source XML which made it work, also when uploading the file from a drive.
    So, I will go back to the source system and try to get a better XML.
    Thanks for now!

  • Message mapping: Insert LineBreak into Element Value

    Hi everybody,
    we use a mapping for generating the content of an email body.
    I have to insert lineBreaks.
    How can I do this in message mapping?
    Regards Mario

    Mario,
    Your question is already answered.
    Did using \n helped you?
    You seem to have marked the thread as answered and didnt award points.
    So i feel anyone who has a similar issue and searches for this thread wont know which thing to do to solve the problem.
    This is one of the reasons why points system are there.
    Regards,
    Sumit
    ps: i know you are a big time contributor in sdn.  I think doing a little bit extra will help everyone.

  • Message Mapping Nested Structure to key node in JDBC XML SQL Structure

    Hello everybody,
    I'm facing the next problem, I have the following nested structure
    <ns0:MT_Irdoc_ArchivoNested xmlns:ns0="http://ref.pemex.com/PI/FI/ArchivoIrdoc">
       <Header id_consecutivo="">
          <Transaction/>
          <Header2/>
          <Header3/>
          <Header4/>
          <Header5/>
          <Detail>
             <Transaction/>
             <Detail2/>
             <Detail3/>
             <Detail4/>
             <Detail5/>
          </Detail>
       </Header>
       <NombreArchivo/>
    </ns0:MT_Irdoc_ArchivoNested>
    as you can see, Detail is a nested Node from Header Node, and Detail is with occurrence 0...unbounded, I need to generate a SELECT XML SQL Structure as follows
       <StatementName>
              <dbTableName action=u201DSELECTu201D>
                  <table>realDbTableName</table>
                  <access>
                     <col1/>
                     <col2/>
                     <col3/>
                  </access>
                  <key1>
                     <col4>val4</col4>
                     <col5>val5</col5>
                     <col6>val6</col6>
                  </key1>
              </dbTableName> 
       </StatementName>
    now my problem is that col4 and col6 are values mapped from Header fields values, and col5 mus be mapped from Detail2 field of Detail Nested Structure, and Detail is 0...unbounded so it can contain any number of values and must included in the key structure, I tried by mapping the Detail Node to the key1 node, so it will generate n numbers of key1 nodes to include in the query, and the Detail number of nodes are not constant so I can't generate key2, key3, keyn...., so what I need is to create n numbers of instances of key1 node, but the problem is that when the mapping try to generate the second instance of key1 node it gives an error in the fields that comes from Header structure, maybe I'm trying to solve my problem wrong, could anyone give some advices or direction?, thanks in advance.
    Regards,
    Julio Cesar

    Julio,
    After placing the below logic in the mapping editor
    Details2 > SplitByValue> col5
    Right click on the Details2 node and choose Context. By Default you will see Details, because Details2 is the child of Details node. I want you to choose the Parent of Details node, I believe that would be HeaderID, am I right?
    If you don't want to do that then,
    Details2 ---> Remove Context > SplitByvalue> col5 will do the trick!
    raj.

  • Looping over elements in BPEL

    Hi! I am new BPEL. I am trying to process a file that have customer information.
    I want to loop thru each of the customer record, do series of validations and then write to a file.
    I tried to use "while" construct to verify that customer name is not null before assigning it to a variable and then invoking the file adapter to write.
    This approach is not working either . Nothing gets written. Not sure how to tackle this issue.
    Any advice is greatly appreciated.
    Regards
    Anil

    Can you please let us know if there are some helpful/correct answers in your previous questions and follow the forum etiquette? https://forums.oracle.com/forums/ann.jspa?annID=893
    Where Can I create Staging table in SOA server?
    regarding sending response at a time to a WSDL in BPEL
    Do we need nodemanager for SOA server installation?
    I want to set the time for polling of  DB Adapter

  • Value Mapping: how to loop over a nested context in a adv. user function

    Hello,
    i have the following source structure:
    <rec> (1:1)
    <field1>aaa</field1> (1:1)
    <field2>bbb</field2> (1:1)
    <b><struc> <u>(1:unbounded)</u>
      <name>myName</name>
      <value>myValue</value>
    </struc></b>
    </rec>
    Destination structure:
    <rec> (1:1)
    <field1>aaa</field1> (1:1)
    <field2>bbb</field2> (1:1)
    <b><field3>bbb</field2> (1:1)</b>
    </rec>
    In order to fill the destination field3 i have to loop over the input-structure struc.
    My problem is, that i don't know how to get access to the name/value pair with a
    extended user-defined function. Since each occurrence in struc i not a simple string but consists of 2 fields, i guess it is not enough simply to loop over input String Array.
    Please help.

    just like u have a loop stmt in java prgm. a simple code:
    Here a and b are the strings that comes to the udf
    for(int i=0;i<a.length;i++)
         boolean found = false;
         int j = 0;
         for(j=0;j<b.length;j++)
              if (a<i>.equals(b[j]))
                   found = true;
                   break;
         if (found == true)
              result.addValue(c[j]);
         else
              result.addValue("");
    Message was edited by:
            Prabhu  S

  • Message Mapping Loop

    Hi,
    I want to have a loop in message mapping.
    For example:
    Customers
      Name (unbounded)
        ID
        GivenName
      Adress (unbounded)
        ID
        City
    ID is the key which determines which Given Name belongs to which city.
    That should be transformed to
    Customers
      Customer (unbounded)
        ID
        GivenName
        City
    Now every Customer has is own element.
    Does anybody have experience with that?
    Regards,
    Udo

    Hi Udo,
    can you this code with <b>advanced user function</b>:
    (with three input values)
    a, b, c
    a - Customers-ID
    b - Adress-ID
    c - Adress-City
    ===============================================
    for (int t =0; t<a.length; t++)
           for (int  j=0; j<b.length; j++)
                   if (a[t].equals(b[j]))
                           result.addValue(c[j]);
    ==================================================
    Regards,
    michal

  • Looping over Nested Structure

    Hey Guys,
    I have a component that returns a structure. The structure is
    called ContactQuery. ContactQuery has to elements, one called
    Results, and one called Success. Results contains the data I want
    to loop over. If you try looping over the ContactQuery by using
    CFLoop and specify the ContactQuery as the collection, of course it
    only loops twice (once for Results, once for Success). How can I
    loop over the Results structure withing ContactQuery? You can see
    the dump of the structure at:
    http://www.digitalswordsmen.com/cfschedule/admin/Create_Tokens_Table.cfm
    Attached is the code I have. I am just unsure of the syntax
    for looping over the Results section of the structure.
    Thank you.

    Nope. I am dumb and didn't really think about it. The fact
    that it is a query nested in a structure threw me off. The code
    that works was
    <cfloop query="ContactQuery.Results">
    <tr>
    <td></td><td>#firstname#</td><td>#lastname#</td><td>#email#</td><td>#randrange(10000,9999 9)#</td>
    </tr>
    </cfloop>
    Thanks for the help, sorry about that dumb question.

  • How to find length of integer elements using message mapping

    Hi all,
             How can I find the number of digits in an element using message mapping
    XIer

    Satish,
               Cause I have to write the code for 100 elements, I have decided to have a AUDF with two inputs;
    1) for the element
    2) for the length of the data type (I am passing length using Constant message mapping func).
    Now when I change my UDF and try running it I get the following error:
    <b><i>Start of test
    Source code has syntax error:  /usr/sap/B06/DVEBMGS00/j2ee/cluster/server0/./temp/classpath_resolver/Map0999e66045cf11dcc83b4ebcfc11da82/source/com/sap/xi/tf/_MM_Recordcount1_.java:160: operator >= cannot be applied to int,java.lang.String if(Element_Name.length()>=Element_Length) ^ /usr/sap/B06/DVEBMGS00/j2ee/cluster/server0/./temp/classpath_resolver/Map0999e66045cf11dcc83b4ebcfc11da82/source/com/sap/xi/tf/_MM_Recordcount1_.java:166: operator <= cannot be applied to int,java.lang.String for(int i=Element_Name.length();i<=Element_Length;i++) ^ 2 errors</i></b>
    The code I have used is:
    public String Include_Space(String Element_Name,String Element_Length,Container container)
    {StringBuffer sb= new StringBuffer();
    if(Element_Name.length()>=Element_Length)
    return""Element_Name"";
    else
    for(int i=Element_Name.length();i<=Element_Length;i++)
    if(i==Element_Name.length())
    sb.append(Element_Name);
    else
    sb.append(" ");
    return ""sb.toString()"";
    Pls advice, where I am going wrong...
    XIer
    Message was edited by:
            XIer

  • Accessing Element's name in Message mapping

    Hi,
       I need to Access the Element's name in Message mapping (Using graphical tool or in user defined function).
    For Example:
    Element: <Company_Name>XYZ Co </Company_Name>
    I need to access the Element's name(i.e.)<b>"Company_Name"</b>. So that I can map it as
    <Element>Company_Name</Element>
    <Element_Value>XYZ Co </Element_Value>
    in the target message.
    Kindly provide your inputs.

    Hi Santhosh,
    I am not sure if this can be done using your Graphical Mapping, but this is possible using JAVA mapping. Your SAX and DOM parsers for JAVA mapping provides methods like getChildNodes, getElementName using which you can get the name of the element.
    Check this link for the methods available for Java Mapping,
    http://java.sun.com/j2se/1.4.2/docs/api/javax/xml/parsers/package-summary.html
    I think the same can also be done using XSL mapping. Though, I am not sure what method should be used for the same.
    Hope this helps,
    Regards,
    Bhavesh

Maybe you are looking for

  • Downloaded firefox in win. 8.1. never got install screen

    firefox downloads and extracts. popup for administrator and password. never get "install" screen

  • VT Advantage with CCM 4.x

    Hi team, We are trying to do a demo for customer on VT advantage (Video) using CCM 4.x server. We are facing some peculier problem where when we initiate a call, it shows only the caller screen on the respective cameras but the voice works oerfectly

  • Error when recording f4v-files: Error from libmp4.so: No Space left in the stsd box.

    We are recording live streams on a Flash Media Interactive Server 3.5.3 r824. In general, everything works fine, so there are no appliaction-issues. But sometimes (it is not reproducable yet) a stream stops recording without any notice or event in th

  • Update date field

    Hi All, I need to update datafiled in a manner where it display only month and year. Date 05-APR-09 05-MAY-09 05-FEB-09 05-MAY-09 08-MAY-09 07-MAY-09 10-MAY-09 woule resemble like below one. Date Apr09 May09 Feb09 May09 May09 May09hare krishna

  • [b]Urgent : oracle report team help[/b]

    I m using oracle reports 6i...I have a common header for all the reports which comes from a specific query..Now i tried using a template but its not possible to add a query there..Is it possible 2 make the header as a different report and display it