Message mapping challenge for a newbie
Dear PI message mapping experts,
I'm a newbie in PI and facing a mapping problem using graphical message mapping.
I'm in an IDOC (INVOIC.INVOICE02) to FILE (EDI) scenario.
Here after is the mapping i need to perform :
Source structure IDOC :
<E1EDKA1> (0..99)
<NAME1> A </NAME1> (0..1)
<NAME2> B </NAME2> (0..1)
<NAME3> C </NAME3> (0..1)
<NAME4> D </NAME4> (0..1)
</E1EDKA1>
Target structure :
<AccountingCustomerParty> (1..1)
<Party> (0..1)
<PartyName> (0..unbounded)
<Name>A</Name> (1..1)
</PartyName>
<PartyName>
<Name>B</Name>
</PartyName>
<PartyName>
<Name>C</Name>
</PartyName>
<PartyName>
<Name>D</Name>
</PartyName>
</Party>
</AccountingCustomerParty>
I know i have to play with context and queues with stanard function or UDF but cannot succeed to do it.
Could you please help me ?
Thanks in advance,
Alysee
Hi,
Please try as below:
1. Create a source structure
<AccountingCustomerParty> (1..1)
<Party> (0..1)
<PartyName> (0..unbounded)
<Name>A</Name> (1..1)
</PartyName>
</Party>
</AccountingCustomerParty>
2. When in message mapping, duplicate the node 'PartyName' 4 times. Right click on the 'PartyName' Node and you would find Duplicate Subtree.
3. Map 'Name1' field in the source to the first 'PartyName' node in the target. Similarly, map Name2, Name3 and Name4 fields to their respective 'PartyName' nodes.
4. Map the 'Name1' field in the source structure to first 'Name' field in the first 'PartyName' Node. Similarly, follow the same process for Name2, Name3 and Name4 fields. By doing so, your requirement would be met.
Thank you.
Regards,
Subbu
Similar Messages
-
Graphical message mapping examples for JDBC and RFC lookup
hi, can any body provide me graphical message mapping examples for the "JDBC Lookup" function and "RFC Lookup" function?
I'm now studying the graphical message mapping and want to try those 2 functions. thank you.
I expect the examples to be simple enoung, not need to set up much.>
Madhu_1980 wrote:
> can u check this link:
>
> PI 7.0 & 7.1 Mapping - Blogs,Articles,Wiki,Code Samples and Videos Collections https://wiki.sdn.sap.com/wiki/pages/viewpage.action?pageId=79955426
>
> it contains a link : SAP PI 7.1 Mapping Enhancements Series: Graphical Support for JDBC and RFC Lookups /people/jin.shin/blog/2008/02/15/sap-pi-71-mapping-enhancements-series-graphical-support-for-jdbc-and-rfc-lookups
May be I'm too foolish to follow those links, I got issues of each links.
What I really want is an example from step0
Swarup:
Refer the Lookup document - Easy Lookup in Process Integration 7.1
https://www.sdn.sap.com/irj/scn/index?rid=/library/uuid/20befc9a-aa72-2b10-ae9b-b0988791d457
The first step is "Create an RFC Enabled Function Module for look up", but where can I create the function module? Should I use ESB, IB? or use transaction 'SE11' ?
Kulkarni:
Very good links for RFC lookup with 7.0/3.0
https://www.sdn.sap.com/irj/scn/index?rid=/library/uuid/70d90a91-3cf4-2a10-d189-bfd37d9c3231&overridelayout=true
At page6 "PI Development/Configuration", it saies "You are on the design maintenance screen in the Integration Builder.Expand the subnodes for the software component version for which you want to import interfaces".
What is "design maintenance screen" ? My IB version is: Service Pack:08 Release:NW07_08_REL.
When I open IB, it display a screen titled with "Configuration: Intergation Builder", I did not find "software component version" node on the left tree.
Madhu_1980 :
it contains a link : SAP PI 7.1 Mapping Enhancements Series: Graphical Support for JDBC and RFC Lookups /people/jin.shin/blog/2008/02/15/sap-pi-71-mapping-enhancements-series-graphical-support-for-jdbc-and-rfc-lookups
The Prerequisites state:
The JDBC channel to be used for the lookup must be configured and activated in the Integration Directory.
The definition of the table used for the lookup must already be imported into the ES Repository as an external definition
But I don't know how to create a JDBC channel and define the table. -
Message mapping challenge in IDOC to EDI scenario
Dear PI message mapping experts,
I'm a newbie in PI and facing a mapping problem using graphical message mapping.
I'm in an IDOC (INVOIC.INVOICE02) to FILE (EDI) scenario.
Here after is the mapping i need to perform :
Source structure IDOC :
<E1EDKA1> (0..99)
<NAME1> A </NAME1> (0..1)
<NAME2> B </NAME2> (0..1)
<NAME3> C </NAME3> (0..1)
<NAME4> D </NAME4> (0..1)
</E1EDKA1>
Target structure :
<AccountingCustomerParty> (1..1)
<Party> (0..1)
<PartyName> (0..unbounded)
<Name>A</Name> (1..1)
</PartyName>
<PartyName>
<Name>B</Name>
</PartyName>
<PartyName>
<Name>C</Name>
</PartyName>
<PartyName>
<Name>D</Name>
</PartyName>
</Party>
</AccountingCustomerParty>
I know i have to play with context and queues with stanard function or UDF but cannot succeed to do it.
Could you please help me ?
Thanks in advance,
AlyseeOne approach out of available few ways to implement this:
NAME1 - Exists - CreateIf - PartyName[0]
NAME2 - Exists - CreateIf - PartyName[1] (Create deuplicate segment)
NAME3 - Exists - CreateIf - PartyName[2] (Create deuplicate segment)
NAME4 - Exists - CreateIf - PartyName[3] (Create deuplicate segment)
Srikanth Srinivasan -
Message Mapping UDF for lookuping of a value inside field's list of values
Hey everyone,
For a FI mapping I'm working on, I was wondering if somebody has some Java UDF which lookups for a value inside the whole list of values which the mapping gathered for a specific field?
Thanks,
Bensource code --
//write your code here
JCO.Repository myRepository;
// Change the logon information to your own system/user
JCO.Client myConnection = JCO.createClient(
// all the client information namely client ,user id pwd etc
myConnection.connect();
// create repository
myRepository = new JCO.Repository( "SAPLookup", myConnection );
// Create function
JCO.Function function = null;
IFunctionTemplate ft = mRepository.getFunctionTemplate("xxxxx"); //Name of RFC
function = ft.getFunction();
// Obtain parameter list for function
JCO.ParameterList input = function.getImportParameterList();
// Pass function parameters
input.setValue( a , "xxxxx" ); //import parameter of RFC, a is input argument.
myConnection.execute( function );
String ret = function.getExportParameterList().getString( "XXXX" ); //export param
myConnection.disconnect();
return ret;
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/a03e7b02-eea4-2910-089f-8214c6d1b439
File Lookup in UDF
https://www.sdn.sap.com/irj/sdn/wiki?path=/display/xi/file%2blookup%2bin%2budf
Lookupu2019s in XI made simpler
/people/siva.maranani/blog/2005/08/23/lookup146s-in-xi-made-simpler
SAP XI Lookup API: the Killer
/people/alessandro.guarneri/blog/2006/03/27/sap-xi-lookup-api-the-killer
Webservice Calls From a User Defined Function.
/people/bhavesh.kantilal/blog/2006/11/20/webservice-calls-from-a-user-defined-function -
How to validate a date in message mapping
Hi experts,
how to validate a date in message mapping. For ex: if date comes as 2008/02/31, then file it shold not get processed.how to achieve this in message mapping. Please help .
Thanks&Regards,
Reyaz HussainHi,
There are few simple ways for date validation as follow,
1.If you would like to handle it in XI only, then in message mapping you could verify about it with the help of generating smart exception.
For e.g in mapping there is one Date conversion API i.e. somthing DateTransformation It converts the incoming date format to required format. Here give the date format i.e expected from Sender File.
If in case the format miss-matched then it will create the exception.
You could handle this exception with the use of [Alert notification|http://help.sap.com/saphelp_nw04/helpdata/en/2c/abb2e7ff6311d194c000a0c93033f7/frameset.htm] and could be even able to notify to sender system about it.
2. The another solution is easy for SAP synchornous communication --If you are passing the file data to SAP, then you could use below function modules to verify date format in receiver RFC/BAPI or inbound IDOC program. If the sy-subrc is not 0 then don't process further.
CONVERT_DATE_FORMAT
ISU_DATE_FORMAT_CHECK
Thanks
Swarup -
XSLT mapping code for N:1 mapping
Hi Guys,
I have got one scenario to collect 5 files to merge as one. To this scenario I want to use N:1 mapping. If I am not wrong, with XSLT mapping is easiest way to do this, please correct me if I am wrong. Can any one provide some links or code to merge these files into one.
Thanks in advance.
Sanwhat is correlation here?
I have three messages coming into BPM....now all the three messages should have a field (any field) whose value will be the same in all the messages.
Ex:
<Message1>
<Name>SAP</Name>
<ID>40</ID>
</Message1>
<Message2>
<Name>SDN</Name>
<ID>40</ID>
</Message2>
<Message3>
<Name>FORUM</Name>
<ID>40</ID>
</Message3>
Now to correlate the above messages, the field ID would be used as it has the same value in all the messages.
How does message mapping looks for the following messages
In your BPM you will have a Transformation step....the mapping included here will have three source messages (File1, File2, File3) and there will be a single target message which will have the below structure:
<ROOT>
<OUTPUT> ...... 0..unbounded
</ROOT>
OUTPUT node of the target should be duplicated (right-click --> duplicate ... in message mapping).....do it twice so that you will have three OUTPUT nodes.
Now each target-OUTPUT node should be mapped to the source OUTPUT node, respectively.
Regards,
Abhishek. -
Attachments deleted during message mapping in PI 7.1
We have upgraded our SAP XI 3.0 SP 22 system to SAP PI 7.1 SP06. In XI 3.0 we created some message mappings that mapped an XML payload with attachments to another message type. The attachments would still exist after the mapping step. In SAP PI 7.1 we now see that attachements are deleted from the message. We cannot see why this is happening. We have tried to set the 3 new option in the operation mappings without any results. The attachements are still being deleted.
Active Options in operation mappings:
Use SAPXMLToolkit = true
Do Not Resolve XOP includes = false
Read Attachements = false
In the SXMB_MONI we can see that the attachements are deleted after the Request Message Mapping step. It is a simple proxy-to-proxy scenario with interface and message mapping.
<Trace level="1" type="B" name="CL_MAPPING_XMS_PLSRV3-ENTER_PLSRV">
<Trace level="2" type="T">......attachment XI_Context not found</Trace>
<Trace level="3" type="T">Mapping already defined in interface determination</Trace>
<Trace level="3" type="T">Object ID of Interface Mapping 46842937562139BCA3F2AC1F36E729FE</Trace>
<Trace level="3" type="T">Version ID of Interface Mapping 5D945F00B00611DDB04FF8CF0A5B0156</Trace>
<Trace level="1" type="T">Interface Mapping urn:kadaster-nl:SERV:ZA:KAD:DOVO im_mail_to_dms</Trace>
<Trace level="3" type="T">Mapping Steps 1 JAVA com/sap/xi/tf/_mm_mail_to_dms_</Trace>
<Trace level="3" type="T">MTOM Attachments are Transferred to the Payload</Trace>
<Trace level="3" type="T">Dynamic Configuration Is Empty</Trace>
<Trace level="2" type="T">Mode 0</Trace>
<Trace level="3" type="T">Search com/sap/xi/tf/_mm_mail_to_dms_.class (urn:kadaster-nl:SERV:ZA:KAD:DOVO, -1) in swcv 5d945f00-b006-11dd-b04f-f8cf0a5b0156.</Trace>
<Trace level="2" type="T">Loaded class com.sap.xi.tf._mm_mail_to_dms_</Trace>
<Trace level="3" type="T">Search com/sap/xi/tf/_mm_mail_to_dms_$MT$InnerLibsList.class (urn:kadaster-nl:SERV:ZA:KAD:DOVO, -1) in swcv 5d945f00-b006-11dd-b04f-f8cf0a5b0156.</Trace>
<Trace level="2" type="T">Loaded class com.sap.xi.tf._mm_mail_to_dms_$MT$InnerLibsList</Trace>
<Trace level="3" type="T">Search com/sap/xi/tf/_mm_mail_to_dms_$MT$InnerParamsList.class (urn:kadaster-nl:SERV:ZA:KAD:DOVO, -1) in swcv 5d945f00-b006-11dd-b04f-f8cf0a5b0156.</Trace>
<Trace level="2" type="T">Loaded class com.sap.xi.tf._mm_mail_to_dms_$MT$InnerParamsList</Trace>
<Trace level="2" type="T">Call method execute of the application Java mapping com.sap.xi.tf._mm_mail_to_dms_</Trace>
<Trace level="1" type="T">*** START APPLICATION TRACE ***</Trace>
<Trace level="3" type="T">Document start</Trace>
<Trace level="3" type="T">Start tag [ns1:OpvoerenDocumentRequest]</Trace>
<Trace level="3" type="T">Add raw attribute [ xmlns:ns1="urn:kadaster-nl:SERVICES:DMS:Opvoeren:ZI_KAD_DMS_MAIN"]</Trace>
<Trace level="3" type="T">Start tag [DocumentInfoRecord]</Trace>
<Trace level="3" type="T">Start tag [Type]</Trace>
<Trace level="3" type="T">Put value [302]</Trace>
<Trace level="3" type="T">Close tag [Type]</Trace>
<Trace level="3" type="T">Start tag [Omschrijving]</Trace>
<Trace level="3" type="T">Put value [Apeldoorn]</Trace>
<Trace level="3" type="T">Close tag [Omschrijving]</Trace>
<Trace level="3" type="T">Close tag [DocumentInfoRecord]</Trace>
<Trace level="3" type="T">Close tag [ns1:OpvoerenDocumentRequest]</Trace>
<Trace level="3" type="T">Document end</Trace>
<Trace level="1" type="T">*** END APPLICATION TRACE ***</Trace>
<Trace level="2" type="T">Java mapping com/sap/xi/tf/_mm_mail_to_dms_ completed. (executeStep() of com.sap.xi.tf._mm_mail_to_dms_).</Trace>
<Trace level="3" type="T">Dynamic Configuration Is Empty</Trace>
<Trace level="3" type="T">Attached will be Deleted cid:payload-001708D1A20E1DEDAD96471B4CCBC447(@)sap.com</Trace>
<Trace level="3" type="T">Attached will be Deleted cid:payload-001708D1A20E1DEDAD96471B4C758447(@)sap.com</Trace>
<Trace level="1" type="T">ContentType application/xml</Trace>
Regards,
JeroenHi Michal,
Already tried this option too. However this option would only transfer the attachments to
the mapping runtime in JAVA. We only map the actual payload in a graphical message
mapping, so for our purpose, the other attachments could stay untouched and remain
in the abap part for further pipeline processing.
You can find the result of the Read attachment option during runtime here:
<!-- ************************************
-->
- <Trace level="1" type="B" name="CL_MAPPING_XMS_PLSRV3-ENTER_PLSRV">
<Trace level="2" type="T">......attachment XI_Context not found</Trace>
<Trace level="3" type="T">Mapping already defined in interface determination</Trace>
<Trace level="3" type="T">Object ID of Interface Mapping 46842937562139BCA3F2AC1F36E729FE</Trace>
<Trace level="3" type="T">Version ID of Interface Mapping 5D945F00B00611DDB04FF8CF0A5B0156</Trace>
<Trace level="1" type="T">Interface Mapping urn:kadaster-nl:SERV:ZA:KAD:DOVO im_mail_to_dms</Trace>
<Trace level="3" type="T">Mapping Steps 1 JAVA com/sap/xi/tf/_mm_mail_to_dms_</Trace>
<Trace level="3" type="T">MTOM Attachments are Transferred to the Payload</Trace>
<Trace level="3" type="T">Dynamic Configuration Is Empty</Trace>
<Trace level="2" type="T">Mode 0</Trace>
<Trace level="3" type="T">Search com/sap/xi/tf/_mm_mail_to_dms_.class (urn:kadaster-nl:SERV:ZA:KAD:DOVO, -1) in swcv 5d945f00-b006-11dd-b04f-f8cf0a5b0156.</Trace>
<Trace level="2" type="T">Loaded class com.sap.xi.tf._mm_mail_to_dms_</Trace>
<Trace level="3" type="T">Search com/sap/xi/tf/_mm_mail_to_dms_$MT$InnerLibsList.class (urn:kadaster-nl:SERV:ZA:KAD:DOVO, -1) in swcv 5d945f00-b006-11dd-b04f-f8cf0a5b0156.</Trace>
<Trace level="2" type="T">Loaded class com.sap.xi.tf._mm_mail_to_dms_$MT$InnerLibsList</Trace>
<Trace level="3" type="T">Search com/sap/xi/tf/_mm_mail_to_dms_$MT$InnerParamsList.class (urn:kadaster-nl:SERV:ZA:KAD:DOVO, -1) in swcv 5d945f00-b006-11dd-b04f-f8cf0a5b0156.</Trace>
<Trace level="2" type="T">Loaded class com.sap.xi.tf._mm_mail_to_dms_$MT$InnerParamsList</Trace>
<Trace level="2" type="T">Call method execute of the application Java mapping com.sap.xi.tf._mm_mail_to_dms_</Trace>
<Trace level="1" type="T">*** START APPLICATION TRACE ***</Trace>
<Trace level="3" type="T">Document start</Trace>
<Trace level="3" type="T">Start tag [ns1:OpvoerenDocumentRequest]</Trace>
<Trace level="3" type="T">Add raw attribute [ xmlns:ns1="urn:kadaster-nl:SERVICES:DMS:Opvoeren:ZI_KAD_DMS_MAIN"]</Trace>
<Trace level="3" type="T">Start tag [DocumentInfoRecord]</Trace>
<Trace level="3" type="T">Start tag [Type]</Trace>
<Trace level="3" type="T">Put value [302]</Trace>
<Trace level="3" type="T">Close tag [Type]</Trace>
<Trace level="3" type="T">Start tag [Omschrijving]</Trace>
<Trace level="3" type="T">Put value [Apeldoorn]</Trace>
<Trace level="3" type="T">Close tag [Omschrijving]</Trace>
<Trace level="3" type="T">Close tag [DocumentInfoRecord]</Trace>
<Trace level="3" type="T">Close tag [ns1:OpvoerenDocumentRequest]</Trace>
<Trace level="3" type="T">Document end</Trace>
<Trace level="1" type="T">*** END APPLICATION TRACE ***</Trace>
<Trace level="2" type="T">Java mapping com/sap/xi/tf/_mm_mail_to_dms_ completed. (executeStep() of com.sap.xi.tf._mm_mail_to_dms_).</Trace>
<Trace level="3" type="T">Dynamic Configuration Is Empty</Trace>
<Trace level="3" type="T">Attached will be Deleted cid:payload-001708D1A20E1DDDAD97A993DAB6CB91(@)sap.com</Trace>
<Trace level="3" type="T">Attached will be Deleted cid:payload-001708D1A20E1DDDAD97A993DB0E4B91(@)sap.com</Trace>
<Trace level="1" type="T">ContentType application/xml</Trace>
</Trace>
</Trace>
</Trace>
Thanks -
RuntimeException in Message-Mapping transformatio error in txt to txt fcc
hi
in my design part i executed my mapping program , it executed successfully
my src is
<?xml version="1.0" encoding="UTF-8"?>
<ns0:mt_sarat_txttxt_sender xmlns:ns0="http://Sarat">
<Company>
<Header>
<Key1>H</Key1>
<RecordId>123</RecordId>
<PlantName>abc</PlantName>
</Header>
<Item>
<Key2>I</Key2>
<MaterialId>456</MaterialId>
<Quantity>def</Quantity>
</Item>
</Company>
</ns0:mt_sarat_txttxt_sender>
IN SXMB_MONI i got RuntimeException in Message-Mapping transformatio error
i reffered some blog according to their sugessition do as follows
Go to SXMB_MONI and get the source xml from there and test it in the IR->Mapping Editor
my source xml is
<?xml version="1.0" encoding="utf-8" ?>
- <ns:mt_sarat_txttxt_sender xmlns:ns="http://Sarat">
- <Company>
- <Header>
<Key1>H</Key1>
<RecordId>123</RecordId>
<PlantName>abc</PlantName>
</Header>
- <Item>
<Key2>I</Key2>
<materialId>456</materialId>
<Quantity>def</Quantity>
</Item>
</Company>
</ns:mt_sarat_txttxt_sender>
when i executed in mapping editor it gives fatal error
Fatal Error: com.sap.engine.lib.xml.parser.ParserException: XMLParser: No data allowed here: (hex) 2d, 20, 3c(:main:, row:2, col:3) com.sap.aii.utilxi.misc.api.BaseRuntimeException: Fatal Error: com.sap.engine.lib.xml.parser.ParserException: XMLParser: No data allowed here: (hex) 2d, 20, 3c(:main:, row:2, col:3) at com.sap.aii.mappingtool.tf3.rt.xparser.MTSaxHandler.run(MTSaxHandler.java:130) at com.sap.aii.mappingtool.tf3.rt.xparser.XParser.run(XParser.java:68) Root Cause: com.sap.engine.lib.xml.parser.NestedSAXParserException: Fatal Error: com.sap.engine.lib.xml.parser.ParserException: XMLParser: No data allowed here: (hex) 2d, 20, 3c(:main:, row:2, col:3)(:main:, row=2, col=3) -> com.sap.engine.lib.xml.parser.ParserException: XMLParser: No data allowed here: (hex) 2d, 20, 3c(:main:, row:2, col:3) at com.sap.engine.lib.xml.parser.XMLParser.scanProlog(XMLParser.java:2668) at com.sap.engine.lib.xml.parser.XMLParser.scanDocument(XMLParser.java:2713) at com.sap.engine.lib.xml.parser.XMLParser.parse0(XMLParser.java:162) at com.sap.engine.lib.xml.parser.AbstractXMLParser.parseAndCatchException(AbstractXMLParser.java:132) at com.sap.engine.lib.xml.parser.AbstractXMLParser.parse(AbstractXMLParser.java:142) at com.sap.engine.lib.xml.parser.AbstractXMLParser.parse(AbstractXMLParser.java:245) at com.sap.engine.lib.xml.parser.Parser.parseWithoutSchemaValidationProcessing(Parser.java:276) at com.sap.engine.lib.xml.parser.Parser.parse(Parser.java:338) at com.sap.engine.lib.xml.parser.SAXParser.parse(SAXParser.java:125) at javax.xml.parsers.SAXParser.parse(SAXParser.java:345) at com.sap.aii.mappingtool.tf3.rt.xparser.MTSaxHandler.run(MTSaxHandler.java:128) at com.sap.aii.mappingtool.tf3.rt.xparser.XParser.run(XParser.java:68) -
at com.sap.engine.lib.xml.parser.SAXParser.parse(SAXParser.java:144) at javax.xml.parsers.SAXParser.parse(SAXParser.java:345) at com.sap.aii.mappingtool.tf3.rt.xparser.MTSaxHandler.run(MTSaxHandler.java:128) at com.sap.aii.mappingtool.tf3.rt.xparser.XParser.run(XParser.java:68) Caused by: com.sap.engine.lib.xml.parser.ParserException: XMLParser: No data allowed here: (hex) 2d, 20, 3c(:main:, row:2, col:3) at com.sap.engine.lib.xml.parser.XMLParser.scanProlog(XMLParser.java:2668) at com.sap.engine.lib.xml.parser.XMLParser.scanDocument(XMLParser.java:2713) at com.sap.engine.lib.xml.parser.XMLParser.parse0(XMLParser.java:162) at com.sap.engine.lib.xml.parser.AbstractXMLParser.parseAndCatchException(AbstractXMLParser.java:132) at com.sap.engine.lib.xml.parser.AbstractXMLParser.parse(AbstractXMLParser.java:142) at com.sap.engine.lib.xml.parser.AbstractXMLParser.parse(AbstractXMLParser.java:245) at com.sap.engine.lib.xml.parser.Parser.parseWithoutSchemaValidationProcessing(Parser.java:276) at com.sap.engine.lib.xml.parser.Parser.parse(Parser.java:338) at com.sap.engine.lib.xml.parser.SAXParser.parse(SAXParser.java:125) ... 3 more Fatal Error: com.sap.engine.lib.xml.parser.ParserException: XMLParser: No data allowed here: (hex) 2d, 20, 3c(:main:, row:2, col:3)
but i have mapped main nodes in message message mapping.
waiting for answers,
maheshgot it maheshwar
in FCC you have given small "m" .
<materialId>456</materialId>
but in data type its caps..
<MaterialId>456</MaterialId>
change it in sender comm channel and it will work..
dont forget to award points..
regards
pushkar -
ABAP Mapping and Message Mapping
Hello
I want to do the followig mapping
File - > IDOC
field1 ->field_idoc1
field2 ->field_idoc2
field3 ->field_idoc3
field4 -> (based on an dictionary table in the R/3)
For the first 3 fields I will use message-mapping.
For field4 I heard about ABAP Mapping. Select with the value of field4 in an ABAP Table and response the new value to the mapping back.
Would both mappings in one Interface-Mapping work?
Regards
ChristophChristoph, There was an article previously available in articles section, now i dont find the link.
I have given a sample code below. You can find lot of sample JCO code provided along with the JCO library that can be downloaded from service.sap.com.
JCO.Repository mRepository;
JCO.Client mConnection = JCO.createClient(
sapClient,
userName,
password,
language,
hostName,
systemNumber );
// connect to SAP
mConnection.connect();
// create repository
mRepository = new JCO.Repository( "sample", mConnection );
// Create function
JCO.Function function = null;
IFunctionTemplate ft = mRepository.getFunctionTemplate("Z_TEST");
function = ft.getFunction();
// Obtain parameter list for function
JCO.ParameterList input = function.getImportParameterList();
// Pass function parameters
input.setValue( param1_value , "P_PARM1");
input.setValue( param2_value , "P_PARM2");
JCO.ParameterList tabInput = function.getTableParameterList();
JCO.Table inputTable = tabInput.getTable("T_PARM3");
inputTable.appendRow();
inputTable.setValue("test" , "IDOC");
mConnection.execute( function );
String ret = function.getExportParameterList().getString( "P_GEN_NUM" );
mConnection.disconnect();
return ret ;
Regds
Saravana -
Hi,
I want to have a loop in message mapping.
For example:
Customers
Name (unbounded)
ID
GivenName
Adress (unbounded)
ID
City
ID is the key which determines which Given Name belongs to which city.
That should be transformed to
Customers
Customer (unbounded)
ID
GivenName
City
Now every Customer has is own element.
Does anybody have experience with that?
Regards,
UdoHi Udo,
can you this code with <b>advanced user function</b>:
(with three input values)
a, b, c
a - Customers-ID
b - Adress-ID
c - Adress-City
===============================================
for (int t =0; t<a.length; t++)
for (int j=0; j<b.length; j++)
if (a[t].equals(b[j]))
result.addValue(c[j]);
==================================================
Regards,
michal -
Hi All,
Can I please have the EDI message mapping names for the following:
1)Tradacoms versions 8 and 9
Inbound:Source message type ORDHDR and the target is IDOC structure ORDERS05(Sales Order)
outbound: Source message Invoic02 Idoc and the target message type INVFIL
2)EDIFACT D96A:
Outbound:Source message Invoic02 Idoc and the target message type INVOIC
3)ENACOM:
Outbound: For Source message Invoic02 Idoc and the target message type INVOIC
Your help is much appreciated.
Cheers,
SmithHi,
DO u have BIC installed on ur PC. if u have then u could find out the mapping name for the BIC itself.
Mapping program name for example:
See_E2X_ORDERS_D9A is the mapping name for ORDERS message type.
Chirag -
User defined function in java for message mapping
I wrote the following user defined function in java for message mapping and mapped vendor with this. The aim of this function is to write a error file at defined path when i send empty Vendor value from File to RFC-Function module BAPI_PO_CREATE. The "err.txt" error file is not written when i execute in TEST but the value "ERROR" is returned to destination Vendor Field.
public String validation(String a, Container container) {
//write your code here
if (a.equals("")) {
try {
String source = "Vendor cannot be empty";
char buffer[] = new char[source.length()];
source.getChars(0, source.length(), buffer, 0);
for (int i = 0; i < buffer.length; i +=2)
f0.write(buffer<i>);
f0.close();
FileWriter f1 = new FileWriter("/10.10.0.55/sapmnt/trans/edixiin/err.txt");
f1.write(buffer);
f1.close();
catch (IOException e) {}
return "ERROR";Hi Senthil,
Check these things :
1) Whether you have permission to create a file in that directory.
2) try giving this
10.10.0.55
sapmnt
trans
edixiin
err.txt
3) Also check for permissions.
Hope this will help you.
Regards
Suraj -
Java Message Mapping : Dynamic FileName and Directory for ASMA
How to Put Dynamic FileName and Directory for ASMA Properties of File Receiver adapter in Java Message Mapping ???
I know How to Do this in UDF , But In Java Type Message Mapping . How to do this ????
Regards
PS.Hi
chk this:
http://wiki.sdn.sap.com/wiki/pages/viewpage.action?pageId=95093307
Thanks
Amit -
Weblogs for different message mapping needed
Hi,
I want to do scenarios using XSLT mapping, ABAP mapping, Java mapping.
Can you suggest me some weblogs...
Thanks,
RamHi Ram,
thought i will start of from scratch.Mapping is basically done to convert one form of xml into another form. This can be done using either of them mentioned below.
- Graphical mapping
- XSLT mapping
- JAVA mapping
- ABAP mapping
To know more about each of them please go thru the following links. And if you ask me your which is better, it depends basically on the scenario you implementing and the complexity involved. Anyways please go thru the following links:
Graphical mapping
/people/bhanu.thirumala/blog/2006/02/02/graphical-message-mapping-150-text-preview
http://www.sapgenie.com/netweaver/xi/mapping1.htm
/people/alessandro.guarneri/blog/2006/01/26/throwing-smart-exceptions-in-xi-graphical-mapping
XSLT mapping
http://help.sap.com/saphelp_nw04/helpdata/en/73/f61eea1741453eb8f794e150067930/content.htm
JAVA mapping
http://help.sap.com/saphelp_nw04/helpdata/en/e2/e13fcd80fe47768df001a558ed10b6/content.htm
ABAP mapping
/people/r.eijpe/blog
To know more about the value mapping tools for the SAP Exchange Infrastructure (XI), please go thru the following link:
http://www.applicon.dk/fileadmin/filer/XI_Tools/ValueMappingTool.pdf
To get an idea as to what value mapping is, please go thru the following links:
http://help.sap.com/saphelp_nw04/helpdata/en/13/ba20dd7beb14438bc7b04b5b6ca300/frameset.htm
http://help.sap.com/saphelp_nw04/helpdata/en/f2/dfae3d47afd652e10000000a114084/frameset.htm
http://help.sap.com/saphelp_nw04/helpdata/en/2a/9d2891cc976549a9ad9f81e9b8db25/content.htm
most of the links that I have provided also helps you get the step by step procedure of doing the same. And also involves the procedure to implement certain advanced features.
Hope this clears your doubt fully.
Also go through this threads...
Re: Different types of Mapping in XI
Regards,
Abhy -
Different options for message mapping in BPM
Hey guys
i m in the learning phase of BPM and am kinda confused with the different ways we can do message mapping in a BPM scenario.
first of all we can do message mapping before BPM,we can also do after BPM and lastly we can do inside BPM(ofcurse this is not recommended as its too resource consuming)
i have bene through starters blog on BPM by Krishna moorthy and Arpit seth,and now am wondering how to use the mapping in diff. ways
suppose i m doing a simple File to File with BPM(just for practise purpose)
now here is what i have designed in IR
DT_sender_File DT_receiver_File
MT_sender_File MT_receiver_File
MI_Outbound_sender(async,outbound), MI_Inbound_receiver(async,inbound)
AI_sender(abstract,async) AI_receiver(abstract,async)
MM_File_File(using MT_sender_File and MT_receiver_File)
now i want to clear some doubts about interface mapping.my understanding is
if i do interface mapping between MI_Outbound_sender and AI_receiver,this will be interface mapping before BPM.
if i do interface mapping between AI_sender and MI_Inbound_receiver,this will be interafce mapping after BPM
and if i do interface mapping between AI_sender and AI_receiver then it will be mapping inside BPM.
is my understanding correct?if yes,then does that means we can we any of the above mapping in our scenario.(if we dont consider the performance issue as of now)
thanx
saifHi Saif,
<i>
is my understanding correct?</i>
Yes, thts correct
<i>if yes,then does that means we can we any of the above mapping in our scenario</i>
Of course, u can use any of them (overlooking the performance issue)
Regards,
Prateek
Maybe you are looking for
-
Setting up default toString() in xml schema
I have an xml schema and xml file that contains info for an app I created. Inside of the app, I load the objects into a combo box for the user to select an item. I want the actual objects in the combo box to access the data directly. Because of the n
-
How do I get PS CC to recognize NIK Collection and Topaz Plugins?
These plugins worked, and still work, in PS CS5. But when I downloaded PS CC it does not recognize these plugins. How do I get them recognized in PS CC?
-
How can I import youtube videos to iMac mediathek ?
How can I import youtube videos to iMac mediathek ?
-
SAP BW Upgrade from 7.0 to 7.3 For SAP BOBJ 4.0: Hardware
Good afternoon I could not find any usable information on the net and I do not know where to look for the following regarding hardware requirements. We are planning to install SAP Business Objects 4.0 SP 02 and need to Upgrade our current SAP BW envi
-
PDF files and the Dell Venue Pro
If I have the Dell Venue Pro can I sign a PDF document which has a signature field inserted into it?