DOM Programming in class for ABAP Mapping?

Hi All!!
I am struggling in transforming XML to be mapping target structures in using ABAP Mapping.
so i am on developing class with DOM.
i would like to know how many <person> derived from source xml, so what method should i use so that i can get that result. or does anyone idea how to work with multirecord to output XML?
data: incode1 type ref to if_ixml_node_collection,
        incode2 type ref to if_ixml_node_collection,
get message content of tag <FirstName>
  incode1 = idocument->get_elements_by_tag_name( 'FirstName' ).
  incode2 = idocument->get_elements_by_tag_name( 'LastName' ).
<?xml version="1.0" encoding="UTF-8"?>
*Source XML
<ns:Personalinfo xmlns:ns="http://sap.com/test/ABAPMapping">
<person>
  <FirstName>ABAP</FirstName>
  <LastName>ITEM1</LastName>
</person>
<person>
  <FirstName>ABAP</FirstName>
  <LastName>ITEM2</LastName>
</person>
</ns:Personalinfo>
Message was edited by: Tony

Tony,
You need to use the method get_length. Try something like: -
*Get the list of child nodes
  child_nodes = idocument->get_children( ).
*Get the number of children within child_nodes.
  int         = child_nodes->get_length( ).
Thanks
Martin

Similar Messages

  • Error the class for ABAP mapping doesnt exist

    hi PI gurus,
    i faced a probleme when i was trying to call a second Mapping which type is ABAp after another one which type is Message Mapping, why i m doing that because i was trying to folow the step by step of michal :
    http://www.sdn.sap.com/irj/scn/weblogs;jsessionid=(J2EE3417100)ID0279207250DB01347930475897169967End?blog=/pub/wlg/6398
    but the problem is i get the error that the class doesnt exist but i m sure that the class exist and i cheked in se24.
    do you have any idea ????
      <SAP:Stack>Error in mapping program Z_ABAP_MAPPING_EXCEPTION_RS (type SAP-ABAP, kernel error ID CREATE_OBJECT_CLASS_NOT_FOUND) The object could not be created: The class Z_ABAP_MAPPING_EXCEPTION_RS does not exist.</SAP:Stack>
    thanx.

    Check this thread
    [Re: SOP Confituration- Maintain Copy Profiles version A00 not maintained   |SOP Confituration- Maintain Copy Profiles version A00 not maintained;
    thanks
    G. Lakshmipathi

  • Detailed example for ABAP mapping in XI7.0 with code in  class builder

    hi experts,
                  will any one one send me the detailed example(including navigation steps) for ABAP mapping in XI7.0 with code in class builder.
                                                         Thankin u,

    Hi,
    Just go through the below link.It will guide you how to do abap mapping:
    The guide is on XI 3.0 but the same can be used in 7.0 also.
    The How-to-guide
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/5c46ab90-0201-0010-42bd-9d0302591383
    This link will provide more information regarding program point of view.
    http://help.sap.com/saphelp_nw04/helpdata/en/86/8280ba12d511d5991b00508b6b8b11/content.htm
    Thanks,
    Kishore.
    Edited by: Kishore on Mar 14, 2008 4:35 AM

  • When we wil go for abap mapping ??

    Hi,
    As we know there are graphical, XSLT, JAVA mappings are there apart from ABAP mapping. I have gone through below weblog.
    /people/udo.martens/blog/2006/08/23/comparing-performance-of-mapping-programs
    and also help.
    http://help.sap.com/saphelp_nw04/helpdata/en/12/05731a10264057badc32d3d3957015/frameset.htm
    None of them says ABAP mapping is either faster or stable as compared to other mappings. Even though it is the case, still when we will go for abap mapping ??
    Is it like that it is totally depend on the available resources in hand ??
    thanks
    kumar

    > The SAP XI/PI mapping is the most efficient as it
    > only loads the part of the source message that are
    > used to create the target message(s) at runtime.
    >
    > Java and XSLT have to load the whole message into
    > memory to process the message. This can be
    > inefficient and if dealing with large messages can
    > cause issues.
    About your statement.
    If you consider the field mapping (or UDF) runtime, then you are correct. But if you consider the whole mapping runtime, you also have to "load" the full message in message mapping, obviously. What happens is that it is transparent to the developer, since loading and parsing is done by standard. But message mapping also deals with loading and parsing the whole message (and it is done with Java underneath). Then I don't think message mapping will have a significantly better/worse performance, when compared with Java mappings (performing normal xml processing methods).
    As for XSLT, the performance problems happens because you have a XSLT processor running over Java VM. Then, if you have heavy load on it, the mapping runtime will consume the resources necessary to run the xslt processor (which is, by itself, very resource consuming) and also to treat that heavy input.
    Regards,
    Henrique.

  • Service Pack needed for ABAP MApping ?

    Hi everyone.
    i'm trying to activate the ABAP MAPPING but it's no working.
    I've done everything SAP documents say. Even i've followed all your posts but it doesn't work.
    I wanto to know if ABAP MAPPING is available for Service Pack 9 (the one i have).
    Thanks.

    Hi
    According to help.sap for ABAP Mapping
    <i>"To reference the development objects of the ABAP Workbench from interface mappings, customers must assign the following value to the parameter com.sap.aii.repository.mapping.additionaltypes in the exchange profile:
    <b>com.sap.aii.repository.mapping.additionaltypes=R3_ABAP|Abap-class;R3_XSLT|XSL (ABAP Engine)</b>"</i>
    So go in Exchange Profile and chk whether this parameter has this value.
    U can also go thru this blog to test ur mapping
    /people/sameer.shadab/blog/2005/09/29/testing-abap-mapping
    Hope it helps.
    Regards
    Arpit Seth

  • Creating ABAP class in XI for ABAP mapping

    Hi All,
    While creating ABAP class in SE80 XI I am getting following message.
    “You are not registered as a
    developer.
    Please register in the Online
    Service System (OSS).
    In the OSS you will receive
    an access key.”
    Plz guide which role I required to do ABAP mapping/class creation.
    Regards

    Hi Rohan,
    for developing abap you need a developer key. You can get it with the corresponding authorisation at <a href="https://websmp209.sap-ag.de/~form/sapnet?_SHORTKEY=01100035870000103676&_SCENARIO=01100035870000000202&">SAP OSS</a>.
    Regards,
    Udo

  • Steps for ABAP Mapping

    Hello,
         Can any one explain how to do ABAP mapping?and necessary trancsaction codes for this?
    Ex: I am sending PO to reciever system.
    And if posibel screen shots....plz
    Thank you

    Hi Jyotsna,
    Which mapping we need to use..
    /people/udo.martens/blog/2006/08/23/comparing-performance-of-mapping-programs
    https://www.sdn.sap.com/irj/sdn/wiki?path=/display/xi/mapping%2btechniques
    ABAP MAPPING...
    You can implement the following mapping programs by using the ABAP Workbench:
    •     ABAP mappings [Seite 375] in ABAP objects
    •     XSLT mappings (ABAP Engine) [Seite 376]
    Use
    ABAP mappings are mapping programs in ABAP objects [Extern] that customers can implement using the ABAP Workbench.
    Prerequisites
    Note the prerequisites in the sections Purpose and Integration as well as the Restrictions in Mapping Development with the ABAP Workbench
    Features
    An ABAP mapping comprises an ABAP class that implements the interface IF_MAPPING in the package SAI_MAPPING. The interface has a method EXECUTE with the following signature:
    Importing Parameter                                               Parameter Meaning
    SOURCE(Type XSTRING)                                   Source XML document
    PARAM(Type Ref To  IF_MAPPING_PARAM)            Parameter object for read access to runtime constants (see below)
    TRACE (Type Ref To IF_MAPPING_TRACE)     Trace object for writing messages in the mapping trace (see below)
    Exporting Parameter                                                  Parameter     Meaning
    RESULT (Type XSTRING)                                Target XML document
    Exception: CX_MAPPING_FAULT
    Applications can decide themselves in the method EXECUTE how to import and change the source XML document. If you want to use the XSLT processor of SAP Web AS, you can use the ABAP Workbench to develop a stylesheet directly (see XSLT Mappings (ABAP Engine) [Seite 376]) rather than using ABAP mappings
    Runtime Constants
    In ABAP mapping you can read access message header fields. To do this, an object of type IF_MAPPING_PARAM is transferred to the EXECUTE method. The interface has constants for the names of the available parameters and a method GET, which returns the respective value for the parameter name. The constants are the same as in Java mappings [Seite 367], although the constant MAPPING_TRACE does not exist for ABAP mappings. Instead, the trace object is transferred directly using the parameter TRACE of the method IF_MAPPING~EXECUTE (see above).
    regards,
    Kishore

  • When do we go for ABAP mapping and Java mapping

    Hi friends,
                At present I am working on graphical mapping in XI ,can you guys give me with an example or scenario when do we use ABAP mapping , Java mapping or XSLT mapping.
    Thanks in advance
    Sud

    <a href="https://www.sdn.sap.comhttp://www.sdn.sap.comhttp://www.sdn.sap.com/irj/sdn/forums">https://www.sdn.sap.comhttp://www.sdn.sap.comhttp://www.sdn.sap.com/irj/sdn/forums</a>
    I have standard XSLT mapping programs available for my scenarios, so use XSLT mapping. Similarly with Java mapping,  For most scenarios, message mapping does the job too well. Abap mapping similarly is used to leverge existing ABAP base.  If message mapping becomes confusing and hard to follow with too many functions, I go for Java mapping (just my way). I havent used ABAP mapping thus far.
    Discussing ABAP mapping
    ABAP mapping is developed in ABAP work bench. ABAP mapping needs to be transported to integration server and XI does not support this transport and have to do with ABAP transports.
    Customers who can develop mapping program on SAP web AS and can transport them there can use ABAP mapping
    *ABAP mapping programs cannot access the value table
    *Since ABAP mappings are executed on ABAP stack SAP does not provide any ABAP mapping programs
    *ABAP mapping programs must exists with one single version in IS, unlike JAva and XSLT mapping that can have multiple versions of mapping program
    Regards,
    Priya
    priya k
    null

  • Debug ABAP code used for ABAP mapping

    Hi Experts,
    I have worked on Abap mapping. I have executed the code in SE24 to acheive desired mapping and the desired output is also generated.
    attached below is a part of the code i have used:
    method IF_MAPPING~EXECUTE.
    * initialize iXML
      TYPE-POOLS: ixml.
      CLASS cl_ixml DEFINITION LOAD.
    * create main factory
      DATA: ixmlfactory TYPE REF TO if_ixml.
      ixmlfactory = cl_ixml=>create( ).
    * create stream factory
      DATA: streamfactory TYPE REF TO if_ixml_stream_factory.
      streamfactory = ixmlfactory->create_stream_factory( ).
    * create input stream
      DATA: istream TYPE REF TO if_ixml_istream.
      istream = streamfactory->create_istream_xstring( source ).
    * parse input document =================================================
    * initialize input document
      DATA: idocument TYPE REF TO if_ixml_document.
      idocument = ixmlfactory->create_document( ).
    * parse input document
      DATA: iparser  TYPE REF TO if_ixml_parser.
      iparser = ixmlfactory->create_parser( stream_factory = streamfactory
                                            istream        = istream
                                            document       = idocument ).
      iparser->parse( ).
    I just want to debug and see if an input is provided how does each of these methods make a difference to it.
    I tried to input some value in the SOURCE parameter on executing the code but it is not working fine.
    Could you please suggest hiw i should go about so that i can see the exact way the input Xstring is affected by each of these methods in the debugger.
    Help will be appreciated.
    Many thanks,
    Neha
    Edited by: Neha Nagrani on Jul 7, 2008 11:46 AM

    Hi Neha,
    Write a Small Report as Folows:
    1.  Create your XMl payload of Type xSTRING.
    2.  Call the method EXECUTE
    Place a Breakpoint on the method. and then keep debugging inside.
    the SetParamter method is obviously called from inside.
    This is the Simplesrt Solution.
    Reward points if useful
    Regards,
    Abhishek

  • ABAP program and FB for value mapping replication

    Hi,
    we are using a 40B system and I want to use the value mapping replication in XI. To refill the data into the XI database I must write an ABAP and a function module to transfer the data out of R/3 into XI (via RFC). Has anybody an example how the program (and the FB) must look like? i.e I want to read table mvke and extract the materialnumber and the prodhierarchy.
    Thanks and best regards
    Arnold

    Hi Arnold,
    First you need a table type with a structure like follows:
    operation
    groupid
    context
    identifier
    agency
    scheme
    (corresponding to the Interface ValueMappingReplication)
    All used data elements should have type string or charXX
    for example: operation - char10, groupid - char32, rest - char120
    Next you create a function module with attribute 'remote-enabled module'.
    The import parameter is your new table structure.
    Next you create an ABAP program. Here an example:
    report z_value_mapping .
    tables mvke.
    data:
    p_value_mapping type zvalue_mapping,
    p_value_mapping_table type zvalue_mapping_table.
    p_value_mapping-operation = 'Insert'.
    p_value_mapping-context = 'http://xi.com/Material'.
    select * from mvke where matnr between '170' and '501'.
    check not mvke-prodh is initial.
    * Create a value mapping group to join two entries.
    * use a unique 32 digit number.
    concatenate '00000000000000' mvke-prodh into p_value_mapping-groupid.
    translate p_value_mapping-groupid using ' 0'.
    * Store the mapping source as first entry to the group
    p_value_mapping-identifier = mvke-matnr.
    p_value_mapping-agency = 'SenderAgency'.
    p_value_mapping-scheme = 'MATNR'.
    append p_value_mapping to p_value_mapping_table.
    * Store the mapping target as second entry to the group
    p_value_mapping-identifier = mvke-prodh.
    p_value_mapping-agency = 'ReceiverAgency'.
    p_value_mapping-scheme = 'PRODH'.
    append p_value_mapping to p_value_mapping_table.
    endselect.
    * Push data to XI
    call function 'Z_VALUE_MAPPING' in background task
      destination 'IS_XID'
      exporting
        value_mapping       = p_value_mapping_table.
        commit work.
    Import the RFC to the Integration Builder, create a mapping between your RFC and the interface ValueMappingReplication.
    Check this Blog for additional steps:
    /people/sreekanth.babu2/blog/2005/02/23/value-mapping-replication
    Choose names for context, agency and scheme which are useful your scenario.
    Regards
    Stefan

  • Need to know how to find the name of the classes for ABAP Objects

    Hi Experts,
    I am new in ABAP Objects. I do not now the best way to find the class which I want to use. Shall I search it using F4 search help, but many of the classes does not have a description with them.
    I want to create a text field on my splitter container. Can anybody please tell me the class-name for the text field.
    Regards,
    Saurabh A. Buksh

    Hi,
    Thank you for the helping me. But, I actually want something which we call a Text Box. I do not require a Text Edit Control.
    Please tell me if you know any classes related to it and the parameters that I need to pass into it.
    Thanks & Regards,
    Saurabh A. Buksh

  • Whaty is the tCode for ABAP Mapping

    HI all
    i m new to sap xi
    What r the adapters that related to sapr/3?
    How do bwe move objects to quality nd quality to production?
    What is Technical system in sld?(i want definition)
    Thaks all

    Hi vivek b  ,
    The following websites give u clear description of Technical system
    SAP XI and SLD
    http://www.sappro.com/downloads/nov06/XIandSLD.pdf
    How to Handle SLD for SAP XI
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/9e76e511-0d01-0010-5c9d-9f768d644808
    cheers!
    gyanaraj
    ****Pls reward points if u find this helpful

  • Looking for How To Guide ABAP Mapping

    Hi folks!
    I'm looking for a good how-to guide for abap mapping.Do you know any resource to look for?
    thanx in advance.
    Regards,
    Marc

    >
    Marc Eckhardt wrote:
    > Hi folks!
    > I'm looking for a good how-to guide for abap mapping.Do you know any resource to look for?
    > thanx in advance.
    > Regards,
    > Marc
    Resource is SDN Search option
    ABAP mapping
    regards,
    Abhishek.

  • Java Mapping, XSLT Mapping, ABAP Mapping

    Hi Experts,
                     Could any one explain what is the main features of the following Mapping. How to pick the mapping?
    Java Mapping - When to use and what is the advantage.
    ABAP Mapping - When to use and what is the advantage.
    XSLT Mapping - When to use and what is the advantage.
    Graphical Mapping - When to use and what is the advantage.
    cheers,
    Sunee

    There are 4 types of mapping in XI
    1. Graphical Mapping
    2. XSLT Mapping
    3. JAVA Mapping
    4. ABAP Mapping
    When to use Message mapping
    1 When the logic for your mapping is simple and straight forward, you can use
    Advantages of message mapping
    1)Easy to use.
    2) has GUI drag and drop.
    3) used for simple mapping cases
    4) it does not involve any complex logic
    Disadvantages of message mapping
    1)has limitation in terms of complex hierarchy
    When to use Java mapping
    1) Java mapping are used when graphical mapping cannot help you.
    Advantages of Java Mapping
    1)you can use Java APIs and Classes in it.
    2) file look up or a DB lookup is possible
    3) DOM is easier to use with lots of classes to help you create nodes and elements.
    Disadvantages of Java mapping
    1)SAX parser is not easy to develop
    2)DOM parser is intensive
    3) Java knowledge is required
    4) bit complexer
    XSLT Mapping - When to use
    1)When the required output is other than XML like Text, Html or XHTML (html displayed as XML )
    2)When default namespace coming from graphical mapping is not required or is to be changed as per requirements.
    3)When data is to be filtered based on certain fields (considering File as source)
    4)When data is to be sorted based on certain field (considering File as source)
    5)When data is to be grouped based on certain field (considering File as source)
    Advantages of using XSLT mapping
    1)XSLT program itself defines its own target structure.
    2)XSLT programs can be imported into SAP XI. Message mapping step can be avoided. One can directly go for interface mapping once message interfaces are created and mapping is imported.
    3)XSLT provides use of number of standard XPath functions that can replaces graphical mapping involving user defined java functions easily.
    4)File content conversion at receiver side can be avoided in case of text or html output.
    5)Multiple occurrences of node within tree (source XML) can be handled easily.
    6)XSLT can be used in combination with graphical mapping.
    7)Multi-mapping is also possible using xslt.
    8)XSLT can be used with ABAP and JAVA Extensions
    Disadvantages of using XSLT mapping
    1)Resultant XML payload can not be viewed in SXMB_MONI if not in XML format (for service packs < SP14).
    2)Interface mapping testing does not show proper error description. So errors in XSLT programs are difficult to trace in XI but can be easily identified outside XI using browser.
    3)XSLT mapping requires more memory than mapping classes generated in Java.
    4)XSLT program become lengthier as source structure fields grows in numbers.
    5)XSLT program sometimes become complex to meet desired functionality.
    6)Some XSL functions are dependent on version of browser.
    Advantages of Abap Mapping
    1) A person comfortable with OOABAP can go for ABAP mapping instead.
    Disadvantages of Abap Mapping
    1) Abap knowledge is required
    2) bit compexer
    For further info on each of the mapping, refer to these links,
    Graphical Mapping,
    http://help.sap.com/saphelp_nw04/helpdata/en/6d/aadd3e6ecb1f39e10000000a114084/content.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/43/c4cdfc334824478090739c04c4a249/content.htm
    XSLT Mapping
    http://help.sap.com/saphelp_nw04/helpdata/en/73/f61eea1741453eb8f794e150067930/content.htm
    http://www.w3.org/TR/xslt20/
    Java Mapping
    http://help.sap.com/saphelp_nw04/helpdata/en/e2/e13fcd80fe47768df001a558ed10b6/content.htm
    DOM parser API
    http://java.sun.com/j2se/1.4.2/docs/api/org/w3c/dom/package-frame.html
    Check this blog on Mapping:
    /people/ravikumar.allampallam/blog/2005/02/10/different-types-of-mapping-in-xi
    Also, check this thread for more info,
    Different types of Mapping in XI

  • Hi , friends pls explain abap mapping and message mapping

    1) pls explain abap mapping and message mapping
       send me screen shorts also.

    Hi
    Mapping Techniques
    XI provides 3 standard ways of interface mapping between source and target.
    Graphical mapping
    Java Mapping
    XSLT Mapping
    Two more additional mapping types can be activated in XI by making changes to the exchange profile. Those two mappings are
    ABAP mapping
    XSLT mapping with ABAP Extensions
    Graphical Mapping
    Graphical mapping is a common approach followed by everyone for generating desired target structure. It involves simple drag-n-drop to correlate respective nodes (fields) from source and target structure. It hardly involves coding. (Exception - User defined functions). But sometimes with graphical mapping it is difficult to produce required output. For example ... text/html output, namespace change, sorting or grouping of records etc.
    ABAP Mapping
    A person comfortable with Object Oriented ABAP can go for ABAP mapping instead.
    Java Mapping
    Java Mapping uses 2 types of parsers. DOM and SAX. DOM is easier to use with lots of classes to help you create nodes and elements, but , DOM is very processor intensive.
    SAX parser is something that parses your XML one after the other, and so is not processor intensive. But, it is not exaclty easy to develop either.
    XSLT Mapping
    One can also think of Java mapping as another option but it is a bit complex and required knowledge of Java. In such cases, XSLT mapping can be the best approach to meet the requirements.
    A few example cases in which an XSLT mapping can be used:-
    When the required output is other than XML like Text, Html or XHTML (html displayed as XML)
    When default namespace coming from graphical mapping is not required or is to be changed as per requirements.
    When data is to be filtered based on certain fields (considering File as source)
    When data is to be sorted based on certain field (considering File as source)
    When data is to be grouped based on certain field (considering File as source)\
    Advantages of using XSLT mapping
    XSLT program itself defines its own target structure.
    XSLT programs can be imported into SAP XI. Message mapping step can be avoided. One can directly go for interface mapping once message interfaces are created and mapping is imported.
    XSLT provides use of number of standard XPath functions that can replaces graphical mapping involving user defined java functions easily.
    File content conversion at receiver side can be avoided in case of text or html output.
    Multiple occurrences of node within tree (source XML) can be handled easily.
    XSLT can be used in combination with graphical mapping.
    Multi-mapping is also possible using xslt.
    XSLT can be used with ABAP and JAVA Extensions.
    Disadvantages of using XSLT mapping
    Resultant XML payload can not be viewed in SXMB_MONI if not in XML format (for service packs < SP14).
    Interface mapping testing does not show proper error description. So errors in XSLT programs are difficult to trace in XI but can be easily identified outside XI using browser.
    XSLT mapping requires more memory than mapping classes generated in Java.
    XSLT program become lengthier as source structure fields grows in numbers.
    XSLT program sometimes become complex to meet desired functionality.
    Some XSL functions are dependent on version of browser.
    Different types of Mappings
    MAPPING SUPPORTED BY XI
    Message Mapping -> Graphical Design and testing environment. Default Provided By XI. Queue based modelling allow handling or large documents. Extensible via user defined functions
    XSLT Mapping - > Based on openstandard, Portable across application platform, Extensible using user defined functions kewl but disadvantage is Memory overload while handling large documents.
    SAX -> Simple Api For XML. -> Allows you to parse through a XML document. Doesn't consume any memory. But the message can be parsed only once from top to bottom. It Has evolved by contributions made by group of ppl itz a open architecture.
    DOM -> Document Object Model -> Itz designed by W3C. Consumes Memory as the message will be loaded. Allows parsing of document in both way top down and bottom up.
    Send me your email id.Shall send you very good docs for both ABAP Mapping and message mapping.
    Thanks

Maybe you are looking for

  • How do i update sarfari?

    How do i update safari? About Safari says that it is version 5.0.2. However, software update thinks that it is a newer version. I uninstalled safari and reinstalled it using the system disc. I tried to reinstall it by downloading before using the dis

  • Does the Blackberry have built in memory?

    Does the Blackberry have built in memory? available memory? additional memory options?..Add-ons/ins? (spec. Blackberry Curve 8900)

  • BW Technology use

    I have been tasked at my work to deliver a Automated letter delivery system at work. This will be driven by the HR department and global in nature. Additionally, We are currently in the process of developing a BW system to deliver standard HR reports

  • IPOD KEEPS REPEATING SAME SONG

    ipod 16GB keeps repeating same song

  • FXML: Sizes relative to screen size

    Hi, I am currently trying to set up a PerspektiveTransform which is somehow relative to the Stages size. Is there any way of accessing the stages, size or will i have to inject this via the FXMLLoader? greetings, andreas