ABAP Mapping - Can it be made simple?
Hey mates,
I'm looking at the ABAP mapping option for transforming source format to target format. I see that we need to have class implementing IF_MAPPING and implement the method EXECUTE and then parse the source message, process it and render the target message. And, here I dont have the data in the form of an internal table which is easy for processing..rather I've to use methods like "get_elements_by_tag_name", "get_item ( index = x)" etc.
Why cant SAP make it simple...in the sense.. similar to the way inbound & outbound proxies are handled?
In inbound proxies, I dont have to worry about parsing the incoming message...I readily have it in data dictionary structures and table types.
In outbound proxies, I dont need to bother about rendering the XML message, I can pass my data dictionary structures & internal tables the EXECUTE_(A)SYNCHRONOUS method.
Are there any disadvantage of this approach? What do u say folks?
thx in adv
praveen
Hi Praveen,
u ll get a stream in a abap mapping, not a deep structure like in proxys. U cant use proxy functionality 4 mapping, as proxys only can use XI protocoll, a abap mapping has more power. It is ur decision 2 use the DOM parser, it is not required. U can search and replace fields with easy string operations - if u like.
Regards,
Udo
Similar Messages
-
Hello,
Pls let me know about Java Maping and ABAP Mapping
Also pls provide good simple scenario blogs for Java Maping and ABAP Mapping.
RegardsHi Ranchit,
Check these links for Mappings
https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/9202d890-0201-0010-1588-adb5e89a6638
https://websmp102.sap-ag.de/~sapdownload/011000358700003604872004E/MappingXI30.pdf (Need Service Makrket place ID)
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/8a57d190-0201-0010-9e87-d8f327e1dba7
JAVA Mapping BLOGS
/people/prasad.ulagappan2/blog/2005/06/29/java-mapping-part-i
/people/prasad.ulagappan2/blog/2005/06/29/java-mapping-part-ii
/people/prasad.ulagappan2/blog/2005/06/29/java-mapping-part-iii
/people/stefan.grube/blog/2006/10/23/testing-and-debugging-java-mapping-in-developer-studio
ABAP Mapping Blogs
https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/e3ead790-0201-0010-64bb-9e4d67a466b4
/people/sameer.shadab/blog/2005/09/29/testing-abap-mapping
Sachin
Message was edited by:
Sachin Dhingra -
Hi,
I have created one ABAP mapping class with the method IF_MAPPING~EXECUTE.I tried to test the mapping program in a report by passing the source(XML document as a string).The call to the mapping method is done as follows:
CALL METHOD CLASS1=>IF_MAPPING~EXECUTE
EXPORTING
source = sxml
IMPORTING
result = sxml1.
When I try to activate the above call, I get an error message which says that You can only use class=>method with static methods.This is happening in SAP WAS6.20.I understand that ABAP mapping can be tested in dynamic calls only in XI.
So the only option left is to test the ABAP mapping in Integration repository Design -Interface mapping.When I include ABAP mapping class in the interface mapping and run the whole scenario,I get error message in SXMB_MONI.
Is there an easy way out to test the ABAP mapping than including it in the Interface mapping?If you have some ideas,please inform.
Thanks in advance,
S.BanukumarHi Chris,
Thanks a lot.I have corrected the name space as ns instead of ns0.I have done the Design and Directory setting as suggested by you.Now I am getting the following error when I try to test my scenario in
SXI_MAPPING_TEST.
<?xml version="1.0" encoding="utf-8" ?>
- <asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
- <asx:values>
<ERROR href="#o97" />
</asx:values>
- <asx:heap xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:abap="http://www.sap.com/abapxml/types/built-in" xmlns:cls="http://www.sap.com/abapxml/classes/global" xmlns:dic="http://www.sap.com/abapxml/types/dictionary">
- <cls:CX_XMS_SYSERR_MAPPING id="o97">
- <CX_ROOT>
<TEXTID>579DFEE1FC5AF24F9C83617A696DC539</TEXTID>
<PREVIOUS />
<KERNEL_ERRID />
- <INTERNAL_SOURCE_POS>
<PROGID>160</PROGID>
<CONTID>650</CONTID>
</INTERNAL_SOURCE_POS>
</CX_ROOT>
<CX_STATIC_CHECK />
- <CX_XMS_SYSTEM_ERROR>
<ID>APPLICATION_PROGRAM_ERROR</ID>
<P1>$TMP.BOOKINGTOMSG</P1>
<P2>R3_ABAP</P2>
<P3>UNCAUGHT_EXCEPTION</P3>
<P4 />
<INFO />
<CATEGORY />
What could be possible reason for the exception?Do I need to give the name space for the ABAP mapping name when I include it in the Interface mapping?
Thanks,
S.Banukumar -
Can somebody post link to How to Use ABAP-Mapping in XI 3.0?
Hello,
can somebody post a real link to the document How to Use ABAP-Mapping in XI 3.0. All the links to this documnet in the existing posts are not valid.
Thanks for your information
JaysonHi
Following weblog might help you.
Testing ABAP Mapping - Testing ABAP Mapping
XML DOM Processing in ABAP part I - Convert an ABAP table into XML file using SAP DOM Approach.
/people/r.eijpe/blog/2006/02/19/xml-dom-processing-in-abap-part-iiia150-xml-dom-within-sap-xi-abap-mapping
SDN TV demo to create and test ABAP mapiing - https://media.sdn.sap.com/SDNTV/main.asp?mediaId=128
How to guide for ABAP mapping.
https://websmp106.sap-ag.de/~form/sapnet?_SHORTKEY=01200252310000071155&
Also check these links,
http://help.sap.com/saphelp_nw04/helpdata/en/ba/e18b1a0fc14f1faf884ae50cece51b/content.htm
Testing ABAP Mapping
Using ABAP XSLT Extensions for XI Mapping
Thanks
Gaurav
Edited by: Gaurav Bhargava on Oct 9, 2008 6:27 AM -
Abap mapping "How to" not available, can you send me the pdf?
Hello,
I need information about ABAP Mapping and all the posts about that kind of mapping have a link to the sdn guide "How to Use ABAP Mapping in Exchange Infrastructure 3.0" --> https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/5c46ab90-0201-0010-42bd-9d0302591383
But that link is broken , is there any way that you can send me that file if you got it?Hi Marshal,
Start with this...........
/people/ravikumar.allampallam/blog/2005/02/10/different-types-of-mapping-in-xi
This document will help you to create ABAP Mapping .
https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/library/xi/3.0/how%20to%20use%20abap-mapping%20in%20xi%203.0.pdf
/people/ricardoandres.maienza/blog/2007/04/06/how-to-call-xi-abap-mapping-via-rfc
/people/sameer.shadab/blog/2005/09/29/testing-abap-mapping -
ABAP Mapping for Large Messages
Hi Folks,
We are exploring different options for dealing with the fact that XI will choke on very large messages/files. One of the options that we are considering is a third party tool that bypasses XI. However, we've just learned that it may be possible to solve the large message problem by using ABAP Mapping, because supposedly, by doing so, one would bypass the large message being converted to XML as it comes into XI. The scenario involves messages coming into XI on their way to SAP R/3. Does the ABAP Mapping option appear to be viable to you experienced folks out there?
Thanks
NicHey
tunneling as per the term is used mainly for IDOC but we use the term bypass to implement the same concept but with other interfaces.
see if u have simple 1-1 mapping then u can do a bypass scenario in which u are not doing anything in IR,u simple do the configurations in ID.
you can not drastically increase the performance just by choosing some specific mapping.mappin is not made for this .
for best performance you can design a bypass JDBC to IDOC scenario(but then you wont be able to do any message mapping.
have a look at the following for bypass scenario
/people/william.li/blog/2006/09/08/how-to-send-any-data-even-binary-through-xi-without-using-the-integration-repository
if u want to do message mapping then design a JDBC to Proxy scenario.
proxy is mainly used to enhance performance and would be the best bet for u i guess
Thanx
Aamir suhail
Message was edited by:
Aamir Suhail -
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 -
Graphical Mapping Vs XSLT mapping Vs Java Mapping Vs ABAP Mapping
Hi Experts,
I have a question regarding different message mapping options available in XI namely
Graphical Mapping
XSLT mapping
Java Mapping
ABAP Mapping
Q1: Which amoung the above mappings is the best and why?
Q2: On what cases Graphical, XSLT, Java and ABAP Mapping should be used?
Q3: Is it true that graphical and XSLT mappings are converted into Java class internally?
Kindly help!
Thanks
Gopal
Message was edited by:
gopalkrishna baligaHi,
There is no hard and fast rule for using the mapping techniques.
Graphical Mapping is used for simple mapping cases. When, the logic for your mapping is simple and straight forward and it does not involve mult hiearchical mapping requirement. and context handling.
Java and XSLT mapping are used when graphical mapping cannot help you.
When the choice is between Java And XSLT, XSLT is simpler than java mapping and easier. But, it has its drawbacks. XSLT can lead to a bad perfrormance if the Source XML is huge.
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.
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
Also, check this thread for more info,
Different types of Mapping in XI
Am not sure about XSLT , but , yes graphical mapping is converted into java classes internally and these classes use SAX parsing as well.
Regards,
Bhavesh -
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,
SuneeThere 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 -
Abap Mapping: error in accessing to DynamicConfiguration.
Hi All,
I have been trying to put a value into Dynamic Configuration repository with the following abap code.
DATA: l_record TYPE MPP_DYNAMIC.
l_record-namespace = 'http://name1/ca/result1'.
l_record-name = 'FileName'.
l_record-value = '/mydir/dir1/File01.xml'.
CALL METHOD dynamic_configuration->add_record
EXPORTING
record = l_record.
I receive the following dump.
Runtime Errors OBJECTS_OBJREF_NOT_ASSIGNED_NO
Except. CX_SY_REF_IS_INITIAL
Date and Time 25.03.2009 11:06:10
Short text
Access using a 'ZERO' object reference is not possible.
What happened?
Error in the ABAP application program.
The current ABAP program "Z_XI_MAPPING_TEST_03==========CP" had to be
interrupted because it contains
a statement that cannot be executed.
Error analysis
An exception occurred that is explained in detail below.
The exception, which is assigned to class 'CX_SY_REF_IS_INITIAL', was n
caught in
procedure "IF_MAPPING~EXECUTE" "(METHOD)", nor was it propagated by a R
clause.
Since the caller of the procedure could not have anticipated that the
exception would occur, the current program is terminated.
The reason for the exception is:
An attempt was made to access a component with a 'ZERO' object
reference (points to 'nothing').
An object reference must point to an object (an instance of a class)
before it can be used to access a component.
Either the reference has not yet been set or it was set to 'ZERO' using
a CLEAR statement.
I am executing my test outside PI, by launching the report Z_MAPPING_TEST as explained in a blog.
In java evironment it is necessary to create an istance of a object for saving the value of the variable 'FileName' inside the Dynamic Configuration repository.
I do not know if it is necessary to create (before) an istance of the Dynamic Configuration in abap mapping or if the method add_record do this.
The meaning of my test is to get the name file from the Dynamic Configuration repository set in a previous step in a flow where the abap mapping will be launched.
Any suggestion will be well appreciated.
Many thanks in advance for your kind cooperation.
Regard,
GiovanniHi,
in your ABAP mapping code, instead of l_record-namespace = 'http://name1/ca/result1' use below:
l_record-namespace = 'http://sap.com/xi/XI/System'.
Then re-run your scenario.
Regards,
Rajeev Gupta -
Exception handling in BPM and ABAP mapping
Hello all,
We have a BPM with this structure:
. REC (receiver)
. <begin BLOCK1>
. TRANSFORMATION1 (Abap Mapping)
. <begin EXCEPT> (exception branch)
. CONTROL (Cancel Process)
. <end EXCEPT>
. <end BLOCK1>
The same exception is assigned to the block; to the mapping and to exception branch.
The problem is that, when in the Abap Mapping the exception CX_MAPPING_FAULT is raised, the exception branch seems to be ignored and so, the BPM doesn't finish.
This problem only occurs in some of ours BPMs, because the same thing, when done in other BPMs, works fine.
I know i can change the BPM to turn around this problem, but i would very much like to know the solution to this.
Please, help us with this posting.
thanks in advance
Filipe BarreiraHi again,
We are in SP19, witch invalidates the note 921757 listed.
Also, i made an abap mapping witch only raises the exception. So i think it is not an ABAP error.
Also the XML seems to be correct, because this is a duplicates check routine. A message (with the same data) already entered previously (we trying to avoid another entry).
In the trace analysis for the message, it is stated that the exception has occurred:
<?xml version="1.0" encoding="utf-8" ?>
- <MappingTrace>
<Trace level="1" type="T">Mapping-Namespace:http://xi.es/suministros</Trace>
<Trace level="1" type="T">Mapping-Name:IM_SALIDAS_TESTE1</Trace>
<Trace level="1" type="T">Mapping-SWCV:7CE651C00ABC11DBCBF0C8E8C0A901F6</Trace>
<Trace level="1" type="T">Mapping-Step:1</Trace>
<Trace level="1" type="T">Mapping-Type:R3_ABAP</Trace>
<Trace level="1" type="T">Mapping-Program:ZCLTD_MM_SALIDAS_CARGA_TESTE</Trace>
<Trace level="1" type="T">Creating Abap mapping. Classname =ZCLTD_MM_SALIDAS_CARGA_TESTE</Trace>
<Trace level="1" type="T">CALL APPLICATION MAPPING.</Trace>
<Trace level="1" type="T">Application error in mapping program ZCLTD_MM_SALIDAS_CARGA_TESTE, error code: , error text:</Trace>
</MappingTrace>
the problem is that the process keeps running.
regards Filipe Barreira -
ABAP Mapping Vs Java Mapping.
We are implementing a project on XI.
We need to freeze on one mapping.
I feel ABAP Mapping provides the following advantages:
1.SXI_MAPPING_TEST is a very good transaction for debugging and testing mapping environment of XI.Iam not sure wether java mapping can be tested after deploying it on XI.
2.ABAP Mapping is well integrated with the XI and also version control becomes very easy as it is provided by the SAP transport system.
3.ABAP also provides user rich/simple API's as java.
4.Support of XI in ABAP would make sustanenace easy as it is going to be a more SAP product and ABAPers are more available in ERP background.
Java punters,Please provide inputs.Hi,
all of the step in the message flow after a message enter
the IS will be done by the abbap stack e.g. Receiver
determination, interface determination, ... The only one
step that is executed in J2EE-Stack is the mapping.
In the pipline the system jump from the abap stack to
Java stack to execute the mapping if the mapping is done
in Java (message mapping, java mapping, xslt,...).
But if the the mapping is done by abap the the runtime
has not to jump to the java stack to execute the mapping.
Because there is no java code to execute. To clarif: if
you have only abap-mapping the the compete process step
do not include the jump to the j2ee-stack of XI. So in
this case the abap mapping is more performant cause the
runtime stay in the abap stack through the complete
message processing.
But if you have mix mapping e.g. first step abap and
second step java then the j2ee-stack will be used as
well.
regards,
Ly-Na Phu -
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 youHello 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.. -
Receiver determintation using Abap Mapping
Hi,
I configured a scenario in which I'm using extended receiver determination to determine the receiver of an incoming message. (The reason for this is that there is only one XI system and two ECC systems - DEV and QAS. By means of the setting in a customizing table it can be determined whether the message is sent to DEV or QAS. The message can't be sent to both systems because it is a synchronous interface). The receiver determination calls an Interface Mapping which has target interface Receiver Determination. I made an Abap Mapping program in which the customize table is read and the output message is formed as follows (according to the structure of the Receivers message):
lrf_output_document = lrf_ixml_factory->create_document( ).
lrf_receivers = lrf_output_document->create_simple_element( name = 'Receivers'
parent = lrf_output_document ).
lrf_receiver = lrf_output_document->create_simple_element( name = 'Receiver'
parent = lrf_receivers ).
lrf_element = lrf_output_document->create_simple_element( name = 'Party'
value = ' '
parent = lrf_receiver ).
lrf_element->set_attribute( name = 'agency'
value = ' ' ).
lrf_element->set_attribute( name = 'scheme'
value = ' ' ).
lrf_element = lrf_output_document->create_simple_element( name = 'Service'
value = 'DEV'
parent = lrf_receiver ).
To fill the RESULT field a stream factory is instantiated and a XSTRING is created. When I send a message to the system, the receiver determination dumps: Error when parsing receiver listLength of XML document 129 Error when parsing receiver listLength of XML Document 129 System expected the element 'Receivers'
Looks like the XSTRING has not got the right structure and can not be parsed into the Receivers message. However, when I create a CSTRING, the message looks OK. I also changed the encoding (Codepage 4103).
When I replace the Abap mapping with a message mapping, the receiver determination works OK. However, in that case it is not possible to read the customizing table. I really need the Abap mapping.
Has anyone ever filled the Receivers massage by means of Abap mapping. Any feedback will be appreciated!Hi,
there is a easier way - totally based on my blogs
create an abap mapping that will feed the dynamicconfiguration in ABAP (with z "Z" namespace) - similar thing shown in my blog
/people/michal.krawczyk2/blog/2007/04/26/xipi-throwing-generic-exceptions-from-any-type-of-mapping
and you don't need to create the XML in ABAP mapping just parse it, fill DC and send the same source to the target
(so you don't change the XML)
then add a message mapping to your interface mapping in which you will only use dynamicconfig value
to populate the receiver segment
nice and clean way
Regards,
Michal Krawczyk -
Abap mapping: remove a parent or child node.
Hi all,
I will trying to remove a parent node (and all childs related to it) or a specific child (field) om my XML input message to obtain a new output message.
Reading the meaning of the methods remove_node and remove child (if_ixml_node) I can not find a solution in writing the right Abap code.
My ouput document is so defined:
data: outcode type ref to if_ixml_node.
I receive the following error message when I try to find all possibilities.
Runtime Errors OBJECTS_OBJREF_NOT_ASSIGNED_NO
If someone can give me a simple code for solving my issue, I will appreciate this.
Thanks,
Regards,
GiovanniHi,
this link explain the signature that is how to use all the methods including the method u want
[http://help.sap.com/saphelp_nw04/helpdata/en/bb/57669ddca511d4990b00508b6b8b11/frameset.htm]
and this for complete library for ABAP mapping[http://help.sap.com/saphelp_nw04/helpdata/en/bb/57669ddca511d4990b00508b6b8b11/frameset.htm]
Thanks and regards,
Kubra Fatima.
Maybe you are looking for
-
Computer won't regonize Ipod with Charger bought
Ipod won't update with new charger bought at Circut city It says that no Ipod is connected. Does anyone know if the replacement charges sold for Ipods are just to charge they supposed to be able to update the Ipod too
-
Download jar / java class from database
Hello, I have database 10.2.0.3 with one procedure that calls some java class loaded in database. Unfortunately I don't have source code of that java class or whole jar that was loaded into database. I would like to download it from database and try
-
How to run 32 binary on 64bit arch?
I have all the permissions, and did chmod +x. I also have all lib32 for games. Nvidia drivers.. etc This is file output: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.0.30, stripped W
-
How to compare two tables in SSIS?
I am creating an SSIS package that will compare two tables and then insert data in another table. Which tool shall I use for that? I tried to use "Conditional Split" but it looks like it only takes one table as input and not two. These are my tables:
-
Can I use time machine to get rid of Lion?
Lion has been a total disaster for my iMac. After installation, everything went very buggy very quickly. Now it is freezing every few minutes. I just want rid of it. Can I use time machine to restore the old system? If so, how? Will my files be