Mapping help

Hi all,
    Please help me in resolving following mapping problem:
I need to post a file to BOMMAT03 IDOC. File structure is parent material # with corresponding child material #s. Again parent with children. Can you help me achieving this in mapping.
Thanks all in advance.

Hi,
To create multiple IDOCs based on Parent material # and Child pair do the following(no need to use BPM for this)
1.change Imported IDOC(from r/3 system) occurrences to 0...Unbounded or 1...Unbounded and import modified XSD as external definition
2.use modified IDOC in message mapping
   map parent material# node to /BOMMAT03/IDOC node
    (This mapping creates number of IDOCs basesed on Parent material#s)
3.normal mapping for rest of the IDOC segments
if you need furthur details please let me know.
cheers,
Jag

Similar Messages

  • XSLT mapping Help Required.

    XSLT mapping Help Required.
    Hi Experts,
    I am New to XSLT Mapping. I am practising the below Example:
    InputXML File:
    <?xml version="1.0" encoding="UTF-8"?>
    <?xml-stylesheet type="text/xsl" href="Persons111.xsl"?>
    <ns0:MT_XSLT_Source xmlns:ns0="http://XYZ.com/gen">
    <Person>
    <FirstName>Anshul</FirstName>
    <LastName>Chowdhary</LastName>
    <Gender>Male</Gender>
    <Address>
    <Street>2nd Main</Street>
    <Houseno>83/b</Houseno>
    <City>Mysore</City>
    </Address> </Person>
    </ns0:MT_XSLT_Source>
    XSL StyleSheet File:
    <?xml version='1.0' encoding="UTF-8"?>
    <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:ns0="http://XYZ.com/Gen"
    Xmlns:ns1=”http://XYZ.com/Test”>
    <xsl:template match="/">
    <ns1:MT_XSLT_Target>
    <Title> <xsl:value-of select="ns0:MT_XSLT_Source/Person/Gender"/> </Title>
    <Name> <xsl:value-of select="concat(concat(ns0:MT_XSLT_Source/Person/FirstName,' '), ns0:MT_XSLT_Source/Person/LastName)"/>
    </Name>
    <Street> <xsl:value-of select="concat(concat(ns0:Mt_XSLT_Source/Person/Address/Houseno,' '),
    ns0:Mt_XSLT_Source/Person/Address/Street)"/> </Street>
    <City> <xsl:value-of select="ns0:Mt_XSLT_Source/Person/Address/City"/> </City>
    </ns1:MT_XSLT_Target>
    </xsl:template>
    </xsl:stylesheet>
    The Desired Output shuold be:
    <?xml version="1.0" encoding="UTF-8"?>
    <ns1:MT_XSLT_Target xmlns:ns1="http://XYZ.com/Test">
    <Title>Male</Title>
    <Name>Anshul Chowdhary</Name>
    <Street>83/b 2nd Main</Street>
    <City>Mysore</City>
    </ns1:MT_XSLT_Target>
    I have refered the xsl in xml and i am getting the below Oupt in a Single line like this:
    Anshul Chowdhary Male 2nd Main 83/b Mysore
    I am Unable to display in Target XML Fomrat as shown above. Please check and do the needful.
    Regards,
    GIRIDHAR

    Hi,
    I have used below for testing.
    Input xml:
    <?xml version="1.0" encoding="UTF-8"?>
    <?xml-stylesheet type="text/xsl" href="Persons111.xsl"?>
    <ns0:MT_XSLT_Source xmlns:ns0="http://XYZ.com/gen">
    <Person>
    <FirstName>Anshul</FirstName>
    <LastName>Chowdhary</LastName>
    <Gender>Male</Gender>
    <Address>
    <Street>2nd Main</Street>
    <Houseno>83/b</Houseno>
    <City>Mysore</City>
    </Address> </Person>
    </ns0:MT_XSLT_Source>
    xsl code:
    <?xml version='1.0' encoding="UTF-8"?> 
    <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:ns0="http://XYZ.com/gen" 
        xmlns:ns1="http://XYZ.com/Test"> 
        <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/> 
        <xsl:template match="/"> 
            <ns1:MT_XSLT_Target> 
                <Title> <xsl:value-of select="ns0:MT_XSLT_Source/Person/Gender"/> </Title> 
                <Name> <xsl:value-of select="concat(concat(ns0:MT_XSLT_Source/Person/FirstName,' '), ns0:MT_XSLT_Source/Person/LastName)"/> 
                </Name> 
                <Street> <xsl:value-of select="concat(concat(/ns0:MT_XSLT_Source/Person/Address/Houseno,' '), 
                    /ns0:MT_XSLT_Source/Person/Address/Street)"/> </Street> 
                <City> <xsl:value-of select="/ns0:MT_XSLT_Source/Person/Address/City"/> </City> 
            </ns1:MT_XSLT_Target> 
        </xsl:template> 
    </xsl:stylesheet>
    For testing in PI ,change the extension from .txt to .xsl and zip it and upload into PI as an imported archive .
    Regards
    Venkat

  • Mapping Help for replacing source value

    Mapping Help for replacing source value
    Posted: Mar 14, 2006 1:06 AM    Reply 
    Hi all,
    I am unable to do transform the source value to required target value,
    From Source ADDRESS_TYPE = 'HOME' should be replaced with 03 to target field ANSSA, and 'MAIL' to be replaced with 05, I am trying to do it but i am unable to handle it, please give u r valuable suggestions,
    The source structure is like this,
    - <Event ID="239" TRANS_TYPE="ADR">
    <PersAddr GEO_LOC_CD="US" EMPLID="29" ADDRESS_TYPE="HOME" EFFDT="02/15/2006" ADDRESS1="92nd Floor" ADDRESS2="812backstreet" ADDRESS3="" ADDRESS4="" CITY="London" COUNTY="" STATE="AN" POSTAL="EC2N 4AG1" COUNTRY="GBR" KEY1="29" KEY2="HOME" KEY3="02/10/2006" />
    <PersAddr GEO_LOC_CD="US" EMPLID="29" ADDRESS_TYPE="MAIL" EFFDT="02/15/2006" ADDRESS1="92nd Floor" ADDRESS2="812backstreet" ADDRESS3="" ADDRESS4="" CITY="London" COUNTY="" STATE="AN" POSTAL="EC2N 4AG1" COUNTRY="GBR" KEY1="29" KEY2="MAIL" KEY3="02/10/2006" />
    </Event>
    REGARDS,
    sridhar

    Hi,
    This can be done using user-defined function as well.
    Code the function as...
    if(Addr_Type.equals("HOME"))
       return "03";
    else if(Addr_Type.equals("MAIL"))
       return "05";
    else
       return "Invalid Address Type";
    Here, Addr_Type is Input String Argument for this function.
    Map this function between ADDRESS_TYPE and ANSSA.
    Regards,
    Uma

  • Mapping help UDF

    hello experts.
    the standard functions are not working for the number of occurrences.
    below is the structure.
    Root 0....unbounded                                                        Root 0 ...unbounded.
       events 0...unbounded
           countries 1...1
           total 0....unbounded.
              amount 1
              totals
    Now the condition is.....if countries tag is not available and  amount is zero and under total tag we have totals.....if the tag not there.......target side root should not come.
    i have done mapping.
    countries ----exists-------------------------------------
    amount-------
                      equals-----not------                                        and--------createif----removecontext-----root.
    constant-------                               and ---------------
       (0)
       totals --------exist------------
    regards,
    chinna

    Hi,
    check this mapping help...
    it looks both the threads are same.
    Regards,
    Muni.

  • Need Mapping Help: Generate index if value comes

    Hi Experts,
    I need mapping help to generate index if value comes form source. we have 4 fields in item level of source and target side we have to pass the these filed values and sequence number.
    below given the structures:
    Source:              Target:
    Item                    Item
       A1                      Text
        A2                      Seq_No
        A3
        A4
    my requirement is if A1 filed values comes from source we should pass to text and pass seq_no to constant-1, same as A2,A3 and A4 filed values also we should pass to text and seq_no for A2 is 2 and A3 is 3 and A4 is 4. suppose if A1 value is not coming from source we should pass seq_no for A2 is 1. if A1 and A3 filed values are not coming from source then we should pass seq_no for A2 and A3 are 1 and 2.
    can you please help me how to achieve this. appreciate for your support.
    Regards,
    Sanjay.

    Hi Sanjay,
                      you can  try this mapping
    1. Generate the target 4  ITEM's  by duplicating the subtree as shown below 3 times.
    Now create the each target item starting from first by mapping them to A1,A2,A3 and A4 respectively. I have shown the first ITEM mapping above. similarly you can map A2 to ITEM[1],
    A3 to ITEM[2] and A4 to ITEM[3].
    2. Now you can map the A* fields to Text one to one as shown below
    Please repeat the same for A2,A3 and A4 to respective Text fields.
    3. 
    First seq_no field as shown
    and similarly others as shown
    Regards
    Anupam

  • SSRS Heat Map help

    Hi 
    I have SQL 2012 and while having a play around with a report I wanted to use a heat map ( or treemap ) as I believe it was called.
    Any way I found that it one of the posts here points you to
    http://www.sqljason.com/2012/03/heat-maps-for-ssrs-using-map-control.html
    So I downloaded the dll
    Went to my dw and executed the following
    CREATE ASSEMBLY HeatMap from 'c:\HeatMap\HeatMap.dll' WITH PERMISSION_SET = SAFE
    CREATE PROCEDURE dbo.CreateHeatMap (@Width real, @Height real, @SqlStrng nvarchar(4000))
    AS
    EXTERNAL NAME HeatMap.StoredProcedures.TreeMapGeography
    Then executed the proc
    DECLARE    @return_value int
    EXEC    @return_value = [dbo].[CreateHeatMap]
            @Width = 20,
            @Height = 25,
            @SqlStrng = N'Select WKDAY ,  SUM (TotalTransactions) ts FROM ReportingDW..f_transactionstolive group by WKDAY  '
    SELECT    'Return Value' = @return_value
    when It comes up with the following
    Msg 6522, Level 16, State 1, Procedure CreateHeatMap, Line 0
    A .NET Framework error occurred during execution of user-defined routine or aggregate "CreateHeatMap":
    System.FormatException: Input string was not in a correct format.
    System.FormatException:
       at System.Number.StringToNumber(String str, NumberStyles options, NumberBuffer& number, NumberFormatInfo info, Boolean parseDecimal)
       at System.Number.ParseInt32(String s, NumberStyles style, NumberFormatInfo info)
       at StoredProcedures.TreeMap..ctor(DataTable TreeMapData, Single Height, Single Width)
       at StoredProcedures.TreeMapGeography(SqlSingle Height, SqlSingle Width, SqlString select)
    Im now not sure what to do any help would be great .
    I just want a simple square treemap or heat map that highlights the size of each process in rectangles and cant believe how difficult it is.
    Many Thanks
    Robert

    Hi Robert,
    In your case, the issue may be due to that you have create an assembly, and then you register the assembly on a Microsoft SQL Server database. Then, you install a different version of the assembly in the Global Assembly Cache (GAC).
    In order to work around the issue, please use the ALTER ASSEMBLY statement to update the assembly in the database. If the problem still exists after you do this, drop the assembly from the database, and then register the new version of the assembly in the
    database.
    There is a similar issue for your reference.
    http://support.microsoft.com/kb/949080/en-us
    If the issue is persist, I recommend you post the issue in the following forum:
    .NET Framework inside SQL Server
    It is appropriate and more experts will assist you.
    Regards,
    Alisa Tang
    If you have any feedback on our support, please click
    here.
    Alisa Tang
    TechNet Community Support

  • XSLT Mapping Help Needed

    Hi,
    I have a XSD file with multiple references in my external definition. I am trying to build a schema validation functionality for a xml based on the multiple XSD's.
    Is it possible to do a schema validation using xslt mapping?
    I am using Altova mapforce to generate XSLT mapping but somehow it is not working. It gives me an error "XML Not well Formed".
    Please help!!

    Hi Jyanth
    yes you can do this
    i advice you to use XML Schema Tools like stylus studio or spy for editing, mapping, converting, validating, generating, binding and documenting any XML data model
    few  links for you how you can do in XML
    validating XML using XSLT
    http://www.ldodds.com/papers/schematron_xsltuk.html
    http://www.w3.org/TR/xslt20/
    http://www.stylusstudio.com/xsd_to_xsd.html
    https://www.xsltstudio.com/xml_schema.html
    regards
    Sandeep
    If helpful kindly reward points

  • XSLT Mapping - help

    Hi All,
    I am new to XSLT mapping.
    My requirement is: file to XML file with CDATA, for this I am planning to use the XSLT Mapping.
    I downloaded the Stylus studio, then what next, Please help meu2026
    In source flat file I have 5 fileds, and target I need to generate the XML file with CDATA set for 5 fields.
    Thanks,
    ANU-

    Hi Anu,
      Is your requirement is sending 5 fields into one string on target side ,If yes
      this code might help you for CDATA section
         <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    <xsl:output method="xml" encoding="UTF-8" indent="yes"/>
    <xsl:template match="/">
    <MT_TARGET>
    <String>
    <xsl:text disable-output-escaping="yes"><![CDATA[<![CDATA[?xml version=\"1.0\"
    encoding=\"ISO-8859-1\"?>]]]]></xsl:text>
    <xsl:copy-of select="*"/>
    <xsl:text disable-output-escaping="yes"><!CDATA[]]]></xsl:text>
    <xsl:text disable-output-escaping="yes"><![CDATA>]></xsl:text>
    </String>
    </MT_TARGET>
    </xsl:template>
    </xsl:Stylesheet>
    //if you use " * " then entire source structure will go into target StringUsers node
    Regards,
    Sandeep

  • Scenario mapping - help required

    Scenario:
    A Customer sends a material (for e.g., SUGARCANE) to the company (SAP Implementing). It processes it and send back as SUGAR.
    The customer is charged for the services rendered.
    The stock of sugarcane/sugar should be visible in the system.
    Please guide me how to map this scenario.
    I will be very much grateful.
    Regards,
    Anbu

    This sales process is referred as Job Work in SAP.
    Refer following SDN thread that can be helpful to you in understanding / reference:
    - Sales Process of JOB WORK
    If in case you have any concern or doubt about the process, do revert back.
    But don't forget to put a effort search more information on JOB WORK for reference/understanding. So that you can specific to your requirement.
    Regards
    JP

  • Mapping help required - extension

    Hi,
    I 've done the mapping based on the below conditions
    Let say 3 fields called : a,b,c
    if a = RAM then
    b = b/c
    here b field is in one segment and a & c fields are in child segment of above segment.
    Note : all the above fields occurance : 0 to 1
    But, i need to display the target including with the above condition also i need the value of the field "b" should display at target side where the condition doesn't satisfy ..  ie., a # RAM.
    Here i 've tried with if then else condition...but that doesn't work.
    Please help me out how can i get the output.
    Thanks in advance for your help
    Regards,
    Y.Raj

    Hi Yeshwant,
    IF you have the source structure as:
    segment
    --b
    ---subsegment
    a
    c
    then you may need these changes in Raj's mapping image
    b-----------------------------------|
    c (context changed to parent of c)--| useoneasmany -- divide
    c ----------------------------------|
    b-----------------------------------|
    c (context changed to parent of c)--| useoneasmany -- else
    c ----------------------------------|
    Regards
    Suraj

  • AEBS Gigabit 802.11n FW 7.2.1 - OS X 10.5.1 Port Mapping HELP!!!!

    Hi
    I have a AEBS with Gigabit Ethernet upgraded to Firmware 7.2.1. I am running OS X Leopard 10.5.1 and I am unable to successfully forward ports. Every time I query a port that I believe to have mapped successfully it appears closed using canyouseeme.org.
    I have followed numerous instructions, but they all seem to be instructions for Tiger, I'm wondering if a setting has been missed. I have successfully assigned a static IP address to my machine but still the port appears to be closed. I do run the Leopard firewall using specific applications option (the third one), but I have also tried it with the firewall off and it still hasn't changed anything, the ports are always closed.
    So now I'm pretty much stumped. Has any one actually managed to get a setup similar to mine working, with the ports being open? All advice appreciated.
    Thanks
    Message was edited by: dalyboy

    Hello dalyboy. Welcome to the Apple Discussions!
    Try the following to see if it will help ...
    To setup port mapping on an 802.11n AirPort Extreme Base Station (AEBSn), either connect to the AEBSn's wireless network or temporarily connect directly, using an Ethernet cable, to one of the LAN port of the AEBSn, and then use the AirPort Utility, in Manual Setup, to make these settings:
    1. Reserve a DHCP-provided IP address for the host device.
    Internet > DHCP tab
    o On the DHCP tab, click the "+" (Add) button to enter DHCP Reservations.
    o Description: <enter the desired description of the host device>
    o Reserve address by: MAC Address
    o Click Continue.
    o MAC Address: <enter the MAC (what Apple calls Ethernet ID if you are using wired or AirPort ID if wireless) hardware address of the host computer>
    o IPv4 Address: <enter the desired IP address>
    o Click Done.
    2. Setup Port Mapping on the AEBSn.
    Advanced > Port Mapping tab
    o Click the "+" (Add) button
    o Service: <choose the appropriate service from the Service pop-up menu>
    o Public UDP Port(s): <enter the appropriate UDP port values>
    o Public TCP Port(s): <enter the appropriate TCP port values>
    o Private IP Address: <enter the IP address of the host server>
    o Private UDP Port(s): <enter the same as Public UDP Ports or your choice>
    o Private TCP Port(s): <enter the same as Public TCP Ports or your choice>
    o Click "Continue"
    (ref: "Well Known" TCP and UDP ports used by Apple software products)

  • Java mapping help please

    Hi all,
    I need help with java code please.
    My source is a csv file and target is multiple idocs.
    Source file structure is as follows:
    Header (field 1, field 2, ........ field 10)
    Item 1a (field 1, field 2, field 3, .........    field 180)
    Item 1b (field 1, field 2, field 3, .........    field 180)
    Item 2a (field 1, field 2, field 3, .........    field 180)
    Item 2b (field 1, field 2, field 3, .........    field 180)
    Item na (field 1, field 2, field 3, .........    field 180)
    Item nb (field 1, field 2, field 3, .........    field 180)
    First line is header. Second is VAT line. Third is Price line for that VAT. Now VAT and Price lines repeat. There need not be VAT line for non-European countries. So a VAT line may or may not preceed a Price line.
    For example: the lines can be like:
    Header
    VAT1
    Price1
    VAT2
    Price2
    Price3
    1) Now, it should produce 3 idocs like:
    Header, VAT1, Price1
    Header, VAT2, Price2
    Header, Price3
    2) One idoc should be created per a pair of VAT and Price lines and they will be identified by a co-relation of a particular field. So first I have to sort all the lines based on this field value. Then I have to read the lines in pairs. If no Vat line, I should just read the Price item and produce an idoc.
    Can you please help me with the java code for this?
    Many thanks in advance.
    Ramesh.

    Many thanks Ram.
    The reason for thinking to go for java mapping is that there is no keyfield for price line. The source file is a pipe delimited csv file. There is a keyfield for VAT line. The same field will be empty for the Price line. I am trying to ask them to at least provide a space for that field between the pipes for price line so that I can use in FCC. It looks like they can't modify the source file.
    Any inputs please?
    Regards.
    Ramesh.

  • Java mapping help pls

    hi all,
    I've a source structure like this below in PI.
    <MAT>
    <doc type>pdf</doc type
    <subnumber>1234</subnumber>
    <id>45ABC<id>
    <matno>ABCD</matno>
    <filename>transaction1.pdf</filename>
    </MAT>
    target structure would be the same but one more field <filecontent> which is bytearray content such as content=[101, 115, 116, 13, 10, 84, 101, 115, 116, 13, 10, 84, 101, 115, 116, 13, 10, 84, 101, 115, 116, 13, 10, 13, 10, 84, 101, 115, 116, 13, 10, 84, 101, 115, 116, 13, 10, 13, 10, 84, 101, 115, 116, 13, 10, 13, 10, 84, 101, 115, 116, 13, 10, 84, 101, 115, 116, 13, 10]
    <MAT>
    <doc type>pdf</doc type
    <subnumber>1234</subnumber>
    <id>45ABC<id>
    <matno>ABCD</matno>
    <filename>transaction1.pdf</filename>
    <filecontent>bytearraycontent</filecontent
    </MAT>
    And target is HTTP post for posting the above attribute names and values in the body of HTML
    I am writing a java mapping program because I have to read the <filename> tag value from the incoming xml and read the file from PI server location and convert the file content to bytearray and also to map it to target structure for HTTP post. I am requesting help from java experts here in modifying the program according to this requirement. pls help
    package com.usahealth.mapping;
    import java.io.InputStream;
    import java.net.URL;
    import java.net.URLConnection;
    import javax.xml.parsers.DocumentBuilder;
    import javax.xml.parsers.DocumentBuilderFactory;
    import org.w3c.dom.Document;
    import org.w3c.dom.Element;
    import org.w3c.dom.NodeList;
    import com.sap.aii.mapping.api.AbstractTrace;
    import com.sap.aii.mapping.api.AbstractTransformation;
    import com.sap.aii.mapping.api.StreamTransformationException;
    import com.sap.aii.mapping.api.TransformationInput;
    import com.sap.aii.mapping.api.TransformationOutput;
    public class ReadAttrMap extends AbstractTransformation {
      @Override
      public void transform(TransformationInput in, TransformationOutput out)
      throws StreamTransformationException {
      AbstractTrace trace = null;
      try {
      // Initialize Trace
      trace = getTrace();
      // Get Input Message as DOM
      DocumentBuilderFactory docBFactory = DocumentBuilderFactory
      .newInstance();
      docBFactory.setNamespaceAware(true);
      DocumentBuilder docBuilder = docBFactory.newDocumentBuilder();
      Document inDoc = docBuilder.parse(in.getInputPayload()
      .getInputStream());
      inDoc.getDocumentElement().normalize();
      // Read from PayLoad  - here is where I need help to read the filename - convert it to byte array and read other xml tag values and pass  to target structure for HTTP post. I am using HTTP receiver adapter for posting
      } catch (Exception e) {
      trace.addInfo(e.getMessage());
      throw new StreamTransformationException("Mapping Exception: "
      + e.getMessage(), e);
    thx
    mike

    Indrajit, thx again
    So I believe, the java mapping has to be changed to not pass MAT for create element
    // building the target structure   Element target = newdoc.createElement("MAT");  - I have to remove this
    newdoc.appendChild(target);  - have to remove this.   Element doctype = newdoc.createElement(root.getChildNodes().item(1)  will be changed to item(0)
      .getNodeName()); 
    And also to add the logic for  [    ]
    String data = "["; 
    if (fileArray != null) { 
    for (int i = 0; i < fileArray.length; i++) { 
    if data = "[";
    data = data + fileArray[i]; 
    else
    if (i < fileArray.length - 1) { 
    data = data + ","; 
    endif.
    data = data + "]";
    is this right?
    thx indrajit
    -mike

  • Mapping Help Needed

    Hello Gurus,
      I need help in message mapping. I have a requirement as below.
    E1EDP01 segment contains many E1EDP19 segments
    E1EDP19 segment contains QUALF, KTEXT and many other fields.
    in the output field, for every QUALF = "002", I need the value of KTEXT of the same E1EDP19.
    the output group is repeated per E1EDP01 (this is working fine)
    The problem is that KTEXT segment is not coming in every E1EDP19, so the result is erratic.
    the present code looks like
      Qualf (context E1EDP01)--
                                Equals  -- 
                   const-002 --           IF   --Outputfield
               KTEXT(context E1EDP01)--
    I tried many other things as well, but result is not as expected
    pls help.
    Thanks
    KQ

    Hi,
    I am not sure why it is not working in your case. I developed same mapping and it is giving correct result.
    Source Payload:
    <E1EDP19 SEGMENT="">
                <QUALF>002</QUALF>
                <IDTNR/>
                <KTEXT>A</KTEXT>
      </E1EDP19>
      <E1EDP19 SEGMENT="">
                <QUALF>003</QUALF>
                <IDTNR/>
      </E1EDP19>
      <E1EDP19 SEGMENT="">
                <QUALF>003</QUALF>
      </E1EDP19>
    <E1EDP19 SEGMENT="">
                <QUALF>002</QUALF>
                <IDTNR/>
                <KTEXT>SDN</KTEXT>
      </E1EDP19>
    Target field gets value as "SDN".
    Is this your requirement?
    Answers to your questions:
    1) the context cannot be E1EDP19, cos there are multiple P19 segments in P01 and it should be done on P01, as the output is based on per P01.
    Even if you are creating target based on line item level (E1EDP01), every E1EDP01 segment will have E1EDP19 and KTEXT with QUALF = 002. Also KTEXT of same E1EDP01 should go to target. Hence in your mapping context should be at E1EDP19 level.
    2) the Qualf comes more number of times than KTEXT, so they are not "matching" at context level.
    Map with default function will take care of this.
    -Gouri

  • Mapping Help/UDF needed.

    Hi my source looks something like this
    Recordset.      0-Unbounded.               
         Record           0-Unbounded
    Value1
    Value2
    DOCNO
    MatNo
    target
    =====
    MT_Target
    Recordset 0-Unb
    Header
    Val1
    Val2
    DOCNO
    Material 0-Unb
    Matno     
    Example Mapping
    =============
    Recordset.      .               
         Record           
    XXX
    YYY
    100
    01
         Record           
    XXX
    YYY
    100
    02
         Record           
    AAA
    ZZZ
    200
    22
         Record           
    AAA
    ZZZ
    200
    33
    Then My Target would be like
    MT_Target
    Recordset
    Header
    XXX
    YYY
    100
    Material
    01
    02
    Recordset
    Header
    AAA
    ZZZ
    200
    Material
    22
    33
    Please notice the Grouping of DOCNo and Corresponding material numbers
    So I am trying to group the Materials in the Target structure based on the DOCNO field. So all the materials falling under the same DocNo are listed  under that DOCNo,Like if Matno 01,02 fall under Docno 100 so they are listed Under DOCNO :100
    So if there are 3 DOCNo’s then we will have 3 Recordset in the target and each Recordset will have the corresponding MATNO for that DocNo. Hope u understand.
    Could anybody please help me out with this, I have tried using SplitByValue Changing and Collapse Conetxt, it works for the Header but not for the "Material" Node. Help needed, Points Guaranteed.

    John,
    DO you know the  DOCNO value before runtime? Will it have only values 100 and 200? If so, then it is easy to do this using graphical mapping.
    You need to evaluate the condition at recordset level in target.
    Have a look at this thread for evaluating the condition at root level
    Re: How to get access to sub-node elements with a UDF?
    If the value of DOCNO is unknown at design time, then it is better to handle the mapping using JAVA mapping.
    Regards,
    Jai Shankar

  • XML to IDOC : Hierarchy mapping help needed

    Hi All,
    I am trying to complete graphical mapping for an XML to IDOC structure. Both structures are EXACTLY same, but data is not populating in IDOC as desired.
    My incoming XML structure and IDOC structure is
    Header
    Data_header  (1 -- 999)
      |_Data_item (1 -- 3)
    Trailer
    If I have only 1 header, then IDOC data is populated correctly.
    But when I have multiple headers and theer items, the Headers are getting populated, but items do not get populated correctly.
    *Example  My Input is:*
    Header
    Data_header
      |_Item_1
      |_item_2
    Data_header
      |_item_3
    Trailer
    My output is (IDOC)
    Header
    Data_header
      |_Item_1
    Data_header
      |_Item_2
    Trailer
    As seen above Item3 of Data_header2 has gone missing._
    For Data Header, I am using REMOVE_CONTEXT function and for ITEM I am using SPLITBYVALUE. Thought this should have helped, but am struggling.
    Any tips, help, greatly appreciated.
    Many thanks
    Shirin

    Hello,
    Have you done one to one mapping, as u mentiong they are exactly same..
    if that's the case, then mapping test should be successful.
    If there is any diffrence in occurences of target structure or any other difference and let me know.
    If possible send me the target structure...
    Regards,
    Sreenivas.

Maybe you are looking for

  • Format Date Parameters

    I have an BI Publisher parameter <?P_INVOICE_BEGIN_DATE?> It displays like this: 1988-10-01T00:00:00.000-04:00 How do I display it like this: 01-OCT-1988 Thanks!

  • Can I set up an original ATV without an Apple remote?

    My son got a 2nd gen Apple TV and gave me his old one - it is possible for me to set it up without the Apple remote - I have a wired and wireless network - iMac - iPhone & iPad with the Remore application - is there any way to set it up? Or do have t

  • HT6065 retina macbook pro with mavericks, computer freezes when swiping to different apps on desktops, anyone else experiencing this?

    Over the past two weeks I've had serious problems whilst working with my rMBP locking up. Whenever i have a few apps open and I swipe between them everything freezes for about 5-10 mins and sometimes not at all. I have to hard shutdown. I've heard ot

  • Gstreamer-sharp 0.99.0-2 fails on build

    hello all im trying to intall gstreamer-sharp 0.99.0-2 off the aur andkeep running into this problem configure: error: in `/tmp/yaourt-tmp-root/aur-gstreamer-sharp/src/gstreamer-sharp-0.99.0': configure: error: C compiler cannot create executables Se

  • Finder won't run

    After downloading the latest version of quicktime and restarting, I got a strange problem: Finder won't run and it seems like the, I don't know, desktop won't run. I can't see the items i've got on my desktop, I can't adjust volume or any of the top