ABAP mapping query

Hi Sdn,
I am new to ABAP mapping in XI, can you please help me out by answering the below questons.
1. When is an ABAP mapping being used?
2. How to write an ABAP mapping?
3. Some examples of ABAP mapping?
Suitable links will also do?
Thanks and regards,
Aniruddha Bhattacharya

Hi Aniruddha,
Few Links from my collection;)
[ABAP Mapping Steps |https://www.sdn.sap.com/irj/scn/wiki?path=/display/xi/abap%252bmapping%252bsteps]
http://help.sap.com/saphelp_nw04/helpdata/en/47/b5413acdb62f70e10000000a114084/frameset.htm
collection of all related Blogs and [http://wiki.sdn.sap.com/wiki/pages/viewpage.action?pageId=79955426|]Wikis
The best one http://www.sdn.sap.com/irj/scn/advancedsearch?query=abap+mapping.
Regards,
Srinivas
Edited by: Srinivas on Apr 22, 2010 8:47 PM

Similar Messages

  • Regarding Java mapping and ABAP Mapping

    Hello,
         If I suppose to do Java mapping or ABAP mapping, Is there any pre requisite to perform these two mappings?
    If exist what they are?
    How to perform them?
    Thank you

    Hello jyotsna,
    Java mapping can be used when you have complex mapping structures.
    We can do most of the times for our requirements through Graphical mapping.
    When the structures are very complex to build you can go for SAX (Simple API for XML) or DOM (Document Object Model) parsers.
    Message mapping internally generates DOM parser.
    Java Mapping in XI
    https://www.sdn.sap.com/irj/sdn/advancedsearch?cat=sdn_all&query=java+mapping&adv=false&sortby=cm_rnd_rankvalue#
    SAP Network Blog: Implementing a Java Mapping in SAP PI
    /people/carlosivan.prietorubio/blog/2007/12/21/implementing-a-java-mapping-in-sap-pi
    Java Mapping (SAP Library - Partner Connectivity Kit)
    http://help.sap.com/saphelp_nw04/helpdata/en/e2/e13fcd80fe47768df001a558ed10b6/frameset.htm
    SAP Network Blog: XI Java Mapping Helper (DOM)
    /people/alessandro.guarneri/blog/2007/03/25/xi-java-mapping-helper-dom
    SAP Network Blog: Testing and Debugging Java Mapping
    /people/stefan.grube/blog/2006/10/23/testing-and-debugging-java-mapping-in-developer-studio
    Binary Conversion in XI - Java Mapping - Code Gallery - Wiki
    https://www.sdn.sap.com/irj/sdn/wiki?path=/display/snippets/binary%2bconversion%2bin%2bxi%2b-%2bjava%2bmapping
    SAP Network Blog: "JAVA MAPPING", an alternate way of reading a CSV file
    /people/rahul.nawale2/blog/2006/07/18/java-mapping-an-alternate-way-of-reading-a-csv-file
    ABAP mappings run on ABAP Stack and are developed in the ABAP workbench of the Integration Server.
    You normally do not need to use the ABAP mappings and is preferable for someone with ABAP programming background. I should say JAVA functions would suffice any complex scenarios.
    refer step by step guides for ABAP Mapping
    ABAP Mapping
    https://www.sdn.sap.com/irj/sdn/advancedsearch?cat=sdn_all&query=abap+mapping&adv=false&sortby=cm_rnd_rankvalue#
    How to Use ABAP Mapping in Exchange Infrastructure 3.0 (NW2004)
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/5c46ab90-0201-0010-42bd-9d0302591383
    SAP Network Blog: Testing ABAP Mapping
    /people/sameer.shadab/blog/2005/09/29/testing-abap-mapping
    SAP Network Blog: How to call XI ABAP Mapping via RFC
    /people/ricardoandres.maienza/blog/2007/04/06/how-to-call-xi-abap-mapping-via-rfc
    SAP Network Blog: XI: ABAP mapping logs - more standard = better visibility
    /people/michal.krawczyk2/blog/2006/09/20/xi-abap-mapping-logs--more-standard-better-visibility
    SAP Network Blog: Dynamically sending a mail to the PO creator using XSLT- ABAP Mapping
    /people/rahul.nawale2/blog/2006/11/01/dynamically-sending-a-mail-to-the-po-creator-using-xslt-abap-mapping
    You need to provide the name of your mapping program maually , you see it is an input box.
    just provide the name of abap mapping program it will work.
    and one more thing you cannot test abap mapping program in integration builer you need to test in abap only.
    use tcode: SXI_MAPPING_TEST for testing abap mapping
    Thanks,
    Satya
    Reward points if it is useful..

  • ABAP mapping issue

    Hi,
    I am using abap mapping to translate xml source to xml target. Source and Target file remains same except for one particular text node.
    Source Structure is
    <SYNC_PROJINFO_004>
           <CNTROLAREA>
                  <BSR>
                          <VERB value="SYNC">SYNC</VERB>
                  </BSR>
           </CNTROLAREA>
            <DATAAREA>
                 <PROJECT>ABC-01</PROJECT>
                 <DESCRIPTN>ABC - WBS Level 1</DESCRIPTN>
                 <SYNCIND>Z</SYNCIND>
                 <GLENTITYS>HED110</GLENTITYS>
            </DATAAREA>
    </SYNC_PROJINFO_004>
    Target file should be
    <SYNC_PROJINFO_004>
           <CNTROLAREA>
                  <BSR>
                          <VERB value="SYNC">SYNC</VERB>
                  </BSR>
           </CNTROLAREA>
            <DATAAREA>
                 <PROJECT>ABC-01</PROJECT>
                 <DESCRIPTN>ABC - WBS Level 1</DESCRIPTN>
                 <SYNCIND>A</SYNCIND>
            </DATAAREA>
    </SYNC_PROJINFO_004>
    The difference in this file is <GLENTITYS> tag is removed and <SYNCIND> tag content is changed to A.
    How do i get the text content from the tag <GLENTITYS> ?
    I am using following code
    data: inglentitys type ref to if_ixml_node_collection.
    inglentitys = idocument->get_elements_by_tag_name( 'GLENTITYS' ).
    The above does not give me the String? How do i get that?
    Thanks,
    Gowri

    Hi,
    I did add folllowing code
    data: outcode3 type ref to if_ixml_node.
    data: inglentitys type ref to if_ixml_node_collection.
    data : sndprn_1 TYPE string.
    inglentitys = idocument->get_elements_by_tag_name( 'GLENTITYS' ).
    outcode3 = inprj_parent->get_item( index = 0 ).
        if outcode3 is not initial.
         sndprn_1 = outcode3->get_value( ).
        else.
          sndprn_1 = 'XXX'.
        endif
    create element SYNCIND
        data: elem_SYNCIND type ref to if_ixml_element.
        elem_SYNCIND = odocument->create_simple_element(
                               name   = 'SYNCIND'
                               value = sndprn_1
                               parent = elem_PROJINFO ).
    It creates a tag when i give sndprn_1 as value. The abap program works fine. Now, i need to get SYNCIND tag content by calling a function module, which inturns query the table.
    sndprn_1 is the input parameter for the function mentioned below. The abap program errors out with the below mentioned code.
    Kindly help.
    CALL FUNCTION 'ZSET_PROJSTATUS'
        EXPORTING
          SNDPRN        = sndprn_1
          PSPID         = 'GPATIL'
          POSID         = 'GP'
        IMPORTING
          ENTRY         = i_entry.
    Thanks,
    Gowri

  • ABAP mapping - File to Idoc

    Hi All,
    I want help on ABAP mapping to perform File to Idoc posting.
    Kindly provide any sample code / document for this.?
    Thanks.
    Ramiz.

    Hi
    Please do a search before posting.
    This link will provide you all about abap mapping.
    https://www.sdn.sap.com/irj/scn/advancedsearch?query=abap+mapping&cat=sdn_all
    Thanks
    Saiyog

  • ABAP Mapping with Value Mapping

    Hi folks,
    Anyone knows if it is possible to query a value mapping table inside an ABAP mapping?
    Thanks in advance,
    Ricardo.

    Hi Bhavesh,
    Thanks for your prompt answer.
    I’m already using the Value Mapping with Master data Replication on several graphical mappings. Unfortunately, some changes happened for one mapping program, the complexity increased and the graphical mapping doesn’t fulfill these new requirements. So, I thought to use ABAP mapping, because is a language that I know well.
    I understood your concern; we are talking about two levels, ABAP and Java stack. It will be needed a call from ABAP stack to Java Stack, but maybe there is an API for that? But, about system performance, I guess Value Mapping its better then RFC lookup, right?
    My mapping problem is: I need to generate two nodes (not a field) every time the code “MODI” (modification) comes in a source field. Inside these two nodes, I have to fill a field, into first node, with an old id and for the second node with the new id.
    I can’t found any standard function to fulfill this requirement. Maybe this is easy with UDF, but I’m not filling comfortable with Java and I don’t know how to do it. If you know, please let me know.
    Thanks in advance.
    Regards,
    Ricardo.

  • ABAP Dictionary structure for use in ABAP Mapping

    Hello, I'm creating an ABAP mapping class which requires me to use standard ABAP dictionary (table) structures (ex.MARA, KNA1 etc) for the mapping as the data coming into the mapping is in that format. I'm creating the ABAP class in the PI server and do not have table structures (MARA, KNA1 etc) in the dictionary in the PI server. What is the efficient way to create these structures (as Z elements) in the PI server's dictionary?
    I have the XSD of these table structures. Can I import those XSDs into the ABAP dictionary in PI servers? If yes, how can it be done? Please help!

    Yes you can import it as an external definition data and create the data type based on this XSD. Go through the link below for more information on the steps to import and how to use it.
    http://help.sap.com/saphelp_nwpi71/helpdata/en/26/9e97b0f525d743882936c2d6f375c7/frameset.htm

  • Acces dynamic configuration variable (e.g. filename) in ABAP mapping class

    Hi experts
    I am searching for a possibility to acces a dynamic configuration variable (DCV) in an ABAP mapping class. Since I could not find a solution in SDN and other sources, I hope somebody in this forum can help me.
    What I already found is the following code which can be used to set a DCV, but what I would be interested in is how to read a DCV.
    Any help is appreciated.
    Markus
    METHOD if_mapping~execute.
    DATA l_record type mpp_dynamic.
    * copy payload
    result = source.
    * add an adapter specific attribute
    l_record-namespace = 'http://sap.com/xi/XI/System/File'.
    l_record-name = 'FileName'.
    l_record-value = 'test.xml'.
    dynamic_configuration->add_record( l_record ).
    ENDMETHOD.

    Hi Markus,
    you can find everything in my blogs
    /people/michal.krawczyk2/blog/2007/04/26/xipi-throwing-generic-exceptions-from-any-type-of-mapping
    Regards,
    michal

  • IDOC-XI-FILE Scenario: Error in ABAP Mapping

    Dear All,
    I am working on IDOC-XI-Flat FIle scenario in which I am using ABAP Mapping as per document "How To Convert an IDoc-XML
    structure to a flat file and vice versa in XI 3.0".
    I created one customized Idoc for this. The Idoc is reacing XI but its flat file is not getting created. Its giving me following error:
    <SAP:Stack>Error in mapping program Z_ABAP_MAPPING_PACKING_LIST (type SAP-ABAP, kernel error ID UNCAUGHT_EXCEPTION) An exception with the type CX_SY_REF_IS_INITIAL occurred, but was neither handled locally, nor declared in a RAISING clause Dereferencing of the NULL reference.</SAP:Stack>
      <SAP:Retry>M</SAP:Retry>
    I have also gone thru threads posted for the same topic earlier but still I am not been to resolve this error.
    Please help me out in resolving this error.
    Regards,
    N.Jain

    HI,
       Log saying that, u have problem in the mapping program.
      i.e Z_ABAP_MAPPING_PACKING_LIST
       the problem is due declaration of data.
       i hope that, you have some methods.
       those are declared under intialization section in mapping program.
      please use start of selection before the method.
    other wise, it will come under intilization section.
    warm regards
    mahesh.

  • How to convert xml file into internal table in ABAP Mapping.

    Hi All,
    I am trying with ABAP mapping. I have one scenario in which I'm using below xml file as a sender from my FTP server.
    <?xml version="1.0" encoding="UTF-8" ?>
    - <ns0:MTO_ABAP_MAPPING xmlns:ns0="http://Capgemini/Mumbai/sarsingh">
      <BookingCode>2KY34R</BookingCode>
    - <Passenger>
      <Name>SARVESH</Name>
      <Address>THANE</Address>
      </Passenger>
    - <Passenger>
      <Name>RAJESH</Name>
      <Address>POWAI</Address>
      </Passenger>
    - <Passenger>
      <Name>CARRON</Name>
      <Address>JUHU</Address>
      </Passenger>
    - <Flight>
      <Date>03/03/07</Date>
      <AirlineID>UA</AirlineID>
      <FlightNumber>125</FlightNumber>
      <From>LAS</From>
      <To>SFO</To>
      </Flight>
      </ns0:MTO_ABAP_MAPPING>
    AT the receiver side I wnat to concatenate the NAME & ADDRESS.
    I tried Robert Eijpe's weblog (/people/r.eijpe/blog/2005/11/21/xml-dom-processing-in-abap-part-ii--convert-an-xml-file-into-an-abap-table-using-sap-dom-approach)
    but couldnt succeed to convert the xml file into internal table perfectly.
    Can anybody help on this. 
    Thanks in advance!!
    Sarvesh

    Hi Sarvesh,
    The pdf has details of ABAP mapping. The example given almost matches the xml file you want to be converted.
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/library/xi/3.0/how to use abap-mapping in xi 3.0.pdf
    Just in case you have not seen this
    regards
    Vijaya

  • Issue in ABAP Mapping

    Hi All
    I am using ABAP mapping.
    After getting children of the root node, i create an iterator by the following statements:
    node_collection = root_node->get_children( ).
    node_iterator = node_collection->create_iterator( ).
    Now, In a loop, i want to get all the children in sequence. So, in the loop i am writing this statement:
    child = node_iterator->get_next( ).
    For the first iteration in the loop, 'child' gets the first child. But, for the second iteration, the 'child' value is becoming NULL.
    Am i doing anything wrong? How can i fix this?
    Thanks
    Chandra

    Hi Chandra,
    you should first check the existence of the node in something like:
    lo_xml_iterator = lo_xml_node_coll->create_iterator( ).
    lo_xml_node = lo_xml_iterator->get_next( ).
    while not lo_xml_node is initial.
      lo_xml_node = lo_xml_iterator->get_next( ).
    endwhile.
    Regards,
    Sergio

  • ABAP MAPPING PROGRAM TRANSPORTATION ISSUE

    Hi Experts,
    Our issue is as following:
    Already one ABAP mapping program is there in our DEV and in QA also.
    Now we have changes the code according to some requirement.
    Now we need to reflect the same in QA also.
    For that I have certain doubts.
    1) after releasing the request number in R/3, will it effect there in integration builder of the QA?
    2) Is there any need to do in ADMINISTRATION to reflect the same?
    Please revert urgenly.
    Regards
    sreeni

    hi barry,
    thanks a lot . we have released it into integration it is working fine.
    thanks once again and i wll reward points also.
    I think you can tell my one more doubt is as:
    I have one new ABAP mapping program which is not used till now in any interface mapping in ID of XI.
    now want use this my integration builder ID in as mapping program.
    in this case is any requirement to enable the same in Integration ADMINISTRATION tab.
    plz clarify me.
    regards
    sreeni

  • Variable Substitution not working when using ABAP mapping

    Hi all,
    I am doing an IDoc to File scenario.
    Due to some complex mapping requirements, i had to use ABAP mapping for IDoc to File ( IDoc : SHPMNT05)
    There is also one more requirement where in i need to generate the receiver filename dynamically
    i.e the filename is of the form :     
        GW-XYZ-DD/MM/YYYY.csv
    Where
    XYZ is the Shipment number (E1EDT20- TKNUM)
    DD/MM/YYYY is the IDOC creation date in ECC (EDIDC-CREDAT)
    so i used the variable substitution option in receiver file adapter.
    But its not working.
    Is there any limitation for using the variable Substitution, doesnt variable substitution work in case of ABAP mapping?
    Regards,
    Loveena.

    Hi,
      u written ABAP mapping program to get the file name in the required format ,
    is it rt?
    when u test it at message mapping(including ABAP map program)
    u get the the required format of file name in the one of target filed.
    if that was fine, please check the variable substituiton parameters at receiver file adapter.
    i mean, are u maintain variable name and refernece.
    u have to specify the payload information.
    warm regards
    mahesh.

  • ABAP mapping split messages and dynamic filename

    Hello,
    i have set up a IDOC to file scenario where the IDOC is split into several files, which works fine. In addition to this it is required to set a dynamic filename out of the ABAP mapping for each file. If only one file is created this works already as well but how do you set the dynamic configuration when the messages are split?
    Regards,
    Andreas
    Edited by: Andreas on Feb 26, 2009 9:09 AM

    you cannot do dynamic configuration for message splits. The below is from SAP help.
    Adapter-Specific Attributes and Multi-Mappings
    In multi-mappings, there are multiple message headers with adapter-specific attributes. The mapping API can only access one message header. This has the following consequences depending on whether there are multiple source or target messages:
    u25CF     1:n Transformation
    If there are multiple target messages, the header for the adapter-specific attributes is copied for each message. This means that you can only create one header for all adapter-specific attributes, and not individual headers.
    u25CF     n:1 Transformation
    This variant is only possible for multi-mappings in integration processes. If there is more than one source message, read-access to the adapter-specific attributes of the various message headers is not possible at runtime.
    u25CF     m:n Transformation
    All afore-mentioned restrictions apply here. Developers can at most write the same adapter-specific attributes for all target messages to the header, without read-access to the attributes of the source messages. m:n transformations are only supported within integration processes.
    What i will suggest is to use BPM to have the message split i.e 1:N mapping and then after that have another mapping 1-1 to have the dynamic configuration

  • XI 7.0 ABAP-Mapping in Design Builder (Interface Mapping)

    Hi,
    in XI 3.0 there was the possibility to specify a ABAP-Mapping-Class in the Interface Mapping. In XI 7.0 the
    entry ABAP-Mapping is somehow missing in the drop-down-Box, there is a Message-Mapping, JAVA-Mapping and XSLT-Mapping but no ABAP-Mapping :-(.
    Did this move somewhere else or are ABAP-Mapping's not possible anymore ??
    Best Regards,
    Frank Marx

    Frank,
    You need to activate ABAP and XSLT mapping.
    Check this blog for the same,
    /people/ravikumar.allampallam/blog/2005/02/10/different-types-of-mapping-in-xi
    Regards,
    Bhavesh

  • Abap mapping and variable substitution in File adapter

    Hi experts!!.
    I am new in abap mapping, but I can do one abap mapping succesfully, but my problem is:
    I need to do a variable substitution in my file receiver adapter:
    Target directory = %cliente&/out
    File Name Scheme = TC%Fecha%.EFI
    ¿Using abap mapping is this possible? How I can do it?.
    Please is very urgent.
    Thanks in advance, and best regarts.

    Yes you can,.
    DynamicConfigurationKey key = DynamicConfigurationKey.create(
        “http://sap.com/xi/XI/System/File”,
        “FileName”);
    will become
    DynamicConfigurationKey key = DynamicConfigurationKey.create(
        “http://sap.com/xi/XI/System/File”,
        “Directory”);
    In the receive file adapter all you would need to do is select Adapter Specifc Attributes --> File Name and Directory and givce some dummy values for the filename and directroy. In the runtime values will be taken from the SOAP header which you set in the mapping.
    Regards
    Bhavesh

Maybe you are looking for

  • How can I select more than one song from the search results?

    I want to create playlists based on certain words in the song title. For example, I may want to create a playlist of all my songs with LOVE in the title. Doing the search is easy, but I can't select more than one song at a time. Is there any way in i

  • ALV : navigation in screens

    Hello, I have some troubles with my transaction. Problem :   I have a standard selection screen with several fields.   If I execute I have a first ALV in which I can choose some lines and go in a   second ALV with a command.   When I save, I launch a

  • How to assign an output type to an Output Device?

    How to assign an output type to an Output Device? I'm using SSF_GET_DEVICE_TYPE to get the device type. But for that device type there is no output device configured. How to do that one. I'm getting the output type as PDF1. Please help me.

  • Flex 4.6 mobile - open WebView in a Group...

    Hello everyone ... I would like to open WebView in a "Group" how to do??? i have see one example: private var webView:StageWebView = new StageWebView();                               public function StageWebViewExample()                              

  • [HELP] Problem on JTree node mouse event !

    I implement a JTree component in my application. Now, I want it acts like windows XP's file explorer: When mouse cursor hovers over some tree node, that node's text became underlined, (font may be also changed as well) and the cursor changes to a 'ha