Message Mapping UDF
Hi Guys,
For the UDF functions for messagemapping,Its a pain to code it using the dataflow editor provided in the repository.
We are having the XI version 3.0(SP 20).
So I decided to use eclipse for coding and debugging the functions and then copy it to the UDF editor for usage.
Have downloaded the Eclipse-SDK 3.0.02 Version and is going to use the the JDK version(1.4.12)
Is that Okay?(I mean is it compatible with the XI version).
I have the aii_map_api.jar already with me.
What is the above ".jar" for and what do they contain?
Have read somewhere that I need the aii_mt_rt.jar and aii_utilxi_misc.jar as well.
What are they for and what do they contain?
If I need the above said jars,Is there any java plug-in available.
Thanks
P
Hi P,
For writing UDF's you dont need all these jar file!!!! they are required either for java mapping or module creation..
BTW you can use any java ide to write this simple piece of java codes (even notepad will do )
Regards
Suraj
Similar Messages
-
Export parameter in Message mapping UDF
Hi, I use PI7.1.
I defined an Export parameter in Message mapping "Signature" tab.
And as http://help.sap.com/saphelp_nwpi71/helpdata/en/43/c3e1fa6c31599ee10000000a1553f6/frameset.htm,
I wrote in my UDF as follows:
public String myudf(int var1) {
String str="test";
if(exists("MY_PARA") == true) {
getOutputParameters.setString("MY_PARA", str);
return str;
However when I ran the test, it said there is "syntax error".
I guess the reason is not found the method exitst() or getOutputParameters. Anybody can help? thanksHere is a valid sample for a Java Mapping program working with Parameterized Mappings - taken from help.sap.com::
import com.sap.aii.mapping.api.AbstractTransformation;
import com.sap.aii.mapping.api.StreamTransformationException;
import com.sap.aii.mapping.api.TransformationInput;
import com.sap.aii.mapping.api.TransformationOutput;
import com.sap.aii.mapping.lookup.Channel;
public class Parametrization_Java
extends AbstractTransformation {
public void transform(
TransformationInput in,
TransformationOutput out)
throws StreamTransformationException {
try {
// Read Import Parameters
String paramS =
in.getInputParameters().getString(u201CPARAM_Su201D);
int paramI =
in.getInputParameters().getInt(u201CPARAM_Iu201D);
Channel paramC =
in.getInputParameters().getChannel(u201CPARAM_Cu201D);
// Use Parameters during Mapping
// Set Export Parameters
out.getOutputParameters()
.setString(u201CPARAM_ESu201D, [String-Wert]);
out.getOutputParameters()
.setInt(u201CPARAM_EIu201D, [Integer-Wert]);
out.getOutputParameters()
.setValue(u201CPARAM_ECu201D, [java.lang.Object]);
} catch (Exception e) {
// Exception Handling
Regards,
Volker -
Message mapping/UDF help..
Hi experts,
Can someone let me know whether there is a chance to fulfill the below requirement:
Input file:
In the Input CSV file, there is a fixed length field with length 9 char and has leading zeroes (ex: 000000650)
Output file:
In the O/p XML file, the corresponding value should be displayed as "6.50" (Have to remove the leading zeroes, right justified and the last two digits should be allocated for decimals)
Can anyone let me know if we can handle in Message mapping or should we write a UDF? If so can you please provide the code..
Any help would be highly appreciated !!
Thnx
- RaviHi Ravi,
UDF:
Create a function zerosuppress and take the cache as value and take one argument input. Then put the code below:
//Put this code
String output = input.replaceFirst("^0+","");
return output;
With this function your leading zeros will remove.
Then map like this:
source field --> zerosuppress (udf) --> divide by 100 --> target field.
This should solve your issue.
Regards,
---Satish -
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 -
Message mapping : UDF parameter string type versus default UTF-8 encoding
Hi,
I'm facing an issue with character encoding when using an UDF to transform into base64 encoding.
While thinking about the subject, I'm not 100% sure if it's possible to get it to work corerctly :
Given :
-The input XML is encoded UTF-8 ( with a special characeter )
-The UDF is generated with java parameter type 'string' ( = set of 16bit unicode characters )
Doubts :
-What is supposed to happen when a node content ( of message encoded in UTF-8 ) is used as input for the UDF string type parameter ? Is the node content decoded/encoded correctly by PI automatically ( at input/output versus the internal 16bit unicode character string ) ?
( I would assume yes )
-Is the default charset of the underlying JVM relevant ? Or does pi always use explicit charsets when encoding/decoding ?
( I would assume it's not relevant )
The UDF java code considers the string as a array of chars while processing them. It uses methods .length and .charat on the input string.
The result is that I have a ISO-8859 encoded string ! ( after decoding it back from the base64 )
What could cause this ?
regards
Dirk
PS If I simply use default functions ( concat etc..) then the resulting xml stays correctly encoded...Hi,
But that would mean that an UTF-8 encoded byte array would be passed unconverted to the UTF-16 unicode string parameter ?
Shouldn't that trigger an exception ?
I'm going to make some tests and see if it enlights my knowledge ( empirical )
Keep you updated,
thanks
dirk -
Export Parameters in Parameterized Message Mapping does not work.
Hello, XI-Gurus!
I have a question: how to use an EXPORT parameter in Parameterized Message Mapping? seems it does not work...
(I use XI / PI 7.1)
For example, I have a follow scenario: a large message comes to XI from one BS (message contains a lot of rows), then this large message splits to some small messages (something about 1000 rows in one small message), and send small messaeg one by one from XI to second BS. So, after receive step I use a transformation step with Parameterized Message Mapping to get a total amount of rows in large message (it needs for making condition for loop in IP, for example). I want to use an EXPORT parameter to pass this number from Parameterized Message Mapping to Integration Process. How can I do it?
Of course, I know the way to how to make this scenario without any parameterizing, but I want to use exactly "Parameterized Message Mapping" like it writes in this help:
http://help.sap.com/saphelp_nwpi71/helpdata/en/43/c3e1fa6c31599ee10000000a1553f6/frameset.htm
This topic contains something about procedure how to use an EXPORT parameter, but this procedure does not work. I don't understand how to write this UserDefined Function, which I can set any export parameters.
I read this blog:
/people/jin.shin/blog/2008/02/14/sap-pi-71-mapping-enhancements-series-parameterized-message-mappings
this blog has NO solutions about EXPORT parameters. about IMPORT parameters - everything OK.
Some topics about how to use export parameters in MM in this forum marked as "answered", but this is not true.
How to export parameters from Message Mapping
Export parameter REALLY work in message mapping???????
Export parameter in Message mapping UDF
WBR,
VsevolodHi Rudolf,
It still does not works.
Great thanks for all your answers! If your advice works on your PI-server, it means that my problem not in UDF.
Step by step:
1) I create in "Signature" tab two parameters: FILE_NAME, FILE_TYPE (of course, they both Export and xsd:string type)
2) Then, I goes to "Functions" tab and create new function "testUDF" with one argument var1.
3) In body of this UDF insert 2 strings:
getOutputParameters.setString("FILE_NAME" , "Order");
getOutputParameters.setString("FILE_TYPE" , "PDF");
4) in "Definition" tab I bind function "Local.testUDF" with one field in my input message and goes to "Test" tab for testing.
5) And then I have a message window "Problems While Testing":
Source text of object Message Mapping: mm_ParamMap | urn:****.*.:****:TEST has syntax errors:
Function testUDF, Line 1:
cannot find symbol
symbol : variable getOutputParameters
location: class com.sap.xi.tf._mm_ParamMap_
getOutputParameters.setString("FILE_NAME" , "Order");
^
Function testUDF, Line 2:
cannot find symbol
symbol : variable getOutputParameters
location: class com.sap.xi.tf._mm_ParamMap_
getOutputParameters.setString("FILE_TYPE" , "PDF");
^
Note: /usr/sap/PID/DVEBMGS00/j2ee/cluster/server0/./temp/classpath_resolver/Mapb1562570ca9e11deb3fe00237d301cd6/source/com/sap/xi/tf/_mm_ParamMap_.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details. Note: /usr/sap/PID/DVEBMGS00/j2ee/cluster/server0/./temp/classpath_resolver/Mapb1562570ca9e11deb3fe00237d301cd6/source/com/sap/xi/tf/_mm_ParamMap_.java uses unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
2 errors
Look at this notes, first writes that I use a deprecated API, second - about unchecked or unsafe operations.
And I have no idea what's wrong... Can you help me?
Thanks!
WBR,
Vsevolod -
Message Mapping activation error-Source code has syntax errors in UDF
Hi all,
I wrote a small UDF for sum of 2 numbers:
import
udf.*
public String getsum(String a, String b, Container container) throws StreamTransformationException{
int c = Integer.parseInt(a);
int d = Integer.parseInt(b);
int e = packageDemo.getSum(c,d);
return e+"";}
In imported archives, i imported pack.jar
In D:\udf , I have packageDemo.java, packageDemo.class, aii_map_api.jar, pack.jar(has the other 3)
packageDemo.java :-
package udf;
public class packageDemo{
public static int getSum(int a,int b)
int c= a+b;
return c;
Did i miss anything?? Icant activate message mapping for 2 errors:-
1.package udf does not exist
2.Function getsum, Line 3:
cannot find symbol symbol : variable packageDemo location: class com.sap.xi.tf._xml_mm_int e = packageDemo.getSum(c,d); ^Note: /usr/sap/P7R/DVEBMGS00/j2ee/cluster/server0/./temp/classpath_resolver/Mapd4214d3099dc11dd9470001d090e4bbe/source/com/sap/xi/tf/_xml_mm_.java uses or overrides a deprecated API.Note: Recompile with -Xlint:deprecation for details.Note: /usr/sap/P7R/DVEBMGS00/j2ee/cluster/server0/./temp/classpath_resolver/Mapd4214d3099dc11dd9470001d090e4bbe/source/com/sap/xi/tf/_xml_mm_.java uses unchecked or unsafe operations.Note: Recompile with -Xlint:unchecked for details.2 errors
Edited by: NagaDurga Nannapaneni on Oct 16, 2008 1:07 PMHi ,
Think the error is coming because the content in imported archive is not being taken into message mapping at all...so package, class, method ..nothing is identified.
Can anyone suggest the solution..
Thanks,
Durga -
I am receiving errors when trying to activate my MM. I believe the issues are in one of two UDF's. These UDF's do work in another MM without error. Below are the error's and UDF's.
ERRORS:
Activation of the change list canceled Check result for Message Mapping MM_WPDBBY_WPDBBY01_TO_POS_WAWAFILE | http://wawa.com/xi/erp/pos: Starting compilation Source code has syntax error: /usr/sap/XID/DVEBMGS00/j2ee/cluster/server0/./temp/classpath_resolver/Map5420e070cabe11dcab4b00306ef38da9/source/com/sap/xi/tf/_MM_WPDBBY_WPDBBY01_TO_POS_WAWAFILE_.java:3291: cannot resolve symbol symbol : variable container location: class com.sap.xi.tf._MM_WPDBBY_WPDBBY01_TO_POS_WAWAFILE_ map = container.getTransformationParameters(); ^ /usr/sap/XID/DVEBMGS00/j2ee/cluster/server0/./temp/classpath_resolver/Map5420e070cabe11dcab4b00306ef38da9/source/com/sap/xi/tf/_MM_WPDBBY_WPDBBY01_TO_POS_WAWAFILE_.java:3293: cannot return a value from method whose result type is void return constant; ^ 2 errors
UDF's:
public String getSender(Container container){
String constant;
java.util.Map map;
// get constant map
map = container.getTransformationParameters();
constant = (String) map.get (StreamTransformationConstants.SENDER_SERVICE);
return constant;
IMPORTS: com.sap.xi.mapping.parse.dom.;javax.xml.parsers.;java.io.;com.sap.aii.mapping.lookup.;org.w3c.dom.*;
public String getSeqNum(String fileType,String objNum,String Sender,Container container){
String request = "<ns0:ZRFC_NUMBER_GET_NEXT xmlns:ns0=\"urn:sap-com:document:sap:rfc:functions\"><NR_RANGE_NR>" + fileType + "</NR_RANGE_NR><OBJECT>" + objNum + "</OBJECT><QUANTITY/></ns0:ZRFC_NUMBER_GET_NEXT>";
InputStream isRequest = new ByteArrayInputStream(request.getBytes());
SystemAccessor accessor = null;
String num = null;
try{
// 1. Determine a channel.
Channel channel = LookupService.getChannel(Sender, "R_RFC_ERP");
// 2. Get a system accessor for the channel.
accessor = LookupService.getSystemAccessor(channel);
// 3. Create a payload according to the data type which the adapter expects.
// Use service.getBinaryPayload() for binary payload,
// and service.getTextPayload() for text payloads.
Payload payload = LookupService.getXmlPayload(isRequest);
// 4. Execute lookup.
Payload response = accessor.call(payload);
//Parse response
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
InputStream resStream = response.getContent();
Document doc = builder.parse(resStream);
Element sequence = doc.getDocumentElement();
NodeList number = sequence.getElementsByTagName("NUMBER");
//Extract Number
num = DOMUtil.getSimpleElementText((Element) number.item(0));
} catch (Exception e) {
return e.getMessage();
} finally {
try {
if (accessor != null) accessor.close();
} catch (Exception e) {
return e.getMessage();
GlobalContainer gc = container.getGlobalContainer();
gc.setParameter("Num", num);
return num;
Any help is appreciated.
Regards,
DarrellFauver,
Just to narrow down the problem first remove the first udf and only use the 2nd user defined function. Also in the 2nd udf you have to change this line:
try{
// 1. Determine a channel.
Channel channel = LookupService.getChannel(Sender, "R_RFC_ERP");
In the above line instead of Sender you use the business service or business system where R_RFC_ERP RFC communication channel is created in Integration Directory. So you are hardcoding it first.
Once you have done this changes do save and test it once again. If this works then you can change back to original and your first udf needs to be checked.
Regards,
---Satish -
UDF in message mapping instead of Java Mapping. Pls advice urgent
Hi All,
My scenario
CRM --- XI -- CRM
In XI I have to open socket connection.
Pls refer link:
/people/saravanakumar.kuppusamy2/blog/2005/12/15/socket-integration-with-xi
Can Java Mapping code given in above link for socket connection can be used in Message Mapping (CRM -- CRM)UDF?
Pls advice urgent
RegardsHi Henry,
I understood your requirement.
But as per the architecture of XI/PI some message has to trigger your scenario.
In this case there is no adapter where you can directly communicate with CRM system.
Do one thing configure a dummy scenario on the sender side.
Use File adapter for simplicity. once it pools the file with some dummy data in the file it comes to Interface mapping(message mapping) of the PIPELINE steps. Now use the code as you mentioned above(within UDF) for opening socket to CRM system and implement you business logic within that program and write the response to target interface which will infact talk with CRM system.
Dont forget to do the coding in an infinite loop with some delay (if required). Other wise every time you have to put a message for File Adapter for triggering purposes.
You can also acheive the same if you use Java Mapping instead of Graphical mapping with UDF(code for Opening socket and business logic). I suggest you to use Java Mapping.
I dont know how you will comunicate with CRM system on receiver side.?
Thanks,
Gujjeti -
UDF for leading zero's in message mapping
Dear team,
I need UDF for leading zero's in my message mapping.
Source and Target both structures contains matnr field.But we have to maintain total 18 chars at target matnr , because RFC in R/3 needed.So I want to add leading zero's when mapping. Can anybody provide the UDF code.
Matnr[source]--->split by value(eachvalue) ->UDF->Matnr[Target]
Ex::if source matnr conatains value "9846538" ; I need matnr value at target side like "000000000009846538"[total 18 chars].
-DrumiHi Ambrish,
Good day...
I have enterd what you said and I got below error... and I gave "input" in place of var1, 18 in place of filedlenght in below program...
=================================
int len = Integer.parseInt(18);
int inputLength = input.length();
try {
Integer.parseInt(input);
// If it is an integer, add 0 (len - inputLength) times
for (int i=0; i< len-inputLength;i++)
input = "0" + input;
return input;
} catch (NumberFormatException numForEx) {
// return as it is, if alphanumeric
return input;
====================================
ERROR:
Source text of object Message Mapping: Lubrisur_SHPMNT_SHPMNT05_TO_WMMBXY_WMMBID02_TransferPosting | urn:bp:xi:dwn:lu:common:Logistics:100 has syntax errors:
Function LeadingZeros, Line 1:
cannot find symbol symbol : method parseInt(int) location: class java.lang.Integer int len = Integer.parseInt(18); ^ 1 error
=======================
Please suggest -
Web Service call from java UDF in message mapping
Hi,
Is it possible to call a web service from inside a java UDF in message mapping? The webservice can be any standard one. If this is possible please let me know how this can be done.
Regards,
ShiladityaHi Shila,
Hope u remember me
Here is the standard code used to call webservice from Java UDF
public String setSoapAction(String SOAPAction,Container container){
try{
DynamicConfiguration conf = (DynamicConfiguration)container.getTransformationParameters().get(StreamTransformationConstants.DYNAMIC_CONFIGURATION);
DynamicConfigurationKey soapurl = DynamicConfigurationKey.create("http:/"+"/sap.com/xi/XI/System/SOAP" , "THeaderSOAPACTION");
conf.put(soapurl, SOAPAction);
return "";
}catch(Exception e){
e.getMessage();
return "";
Regards,
Arijit -
UDF Problem in message mapping
Hi,
I have proxy to file scenario where i am getting mapping error
Runtime exception during processing target field mapping /ns0:DataManagement/payrollArea. The message is: Exception:[java.lang.NullPointerException] in class com.sap.xi.tf._DataManagement_to_DataManagementM4_ method SetFileName$[, com.sap.aii.mappingtool.tf3.rt.Context@1861efad].
There is one UDF Set file Namewhich t is throwing error.
UDF Setfilename
DynamicConfiguration conf = (DynamicConfiguration) container.getTransformationParameters().get(StreamTransformationConstants.DYNAMIC_CONFIGURATION);
DynamicConfigurationKey key = DynamicConfigurationKey.create("http://sap.com/xi/XI/System/File", "FileName");
String targetFileName="DMS_" + a + ".dat";
conf.put(key,targetFileName);
return a;
Please help me in this issue.
Thanks in AdvanceHi,
This error will not come while actual run of scenario.
During Testing Message mapping, this might be coming to you, but while actual run scenario will work fine.
and one more thing ...
please your code inside try .. catch block of java code
try
/* your actual code */
catch(Exception e)
String exception = e.toString();
return exception;
Hope this will help you.
Regards
Prabhat Sharma. -
GlobalContainer object values acessed among UDF's in message mapping ?
hi
i have scenario where i am using globalContainer variable functionality in my message mapping.
in edit java section
String usr;
Container container ;
GlobalContainer globalContainer ;
intialize usr = "";
in First UDF
String inlogin_sess = " ashutosh test value" ;
globalContainer.setParameter(usr,inlogin_sess);
return any value :
now if i create another 2nd UDF and use :
String out =globalContainer.getParameter(usr);
return out ;
now 2nd UDF is giving null pointer exception...
for testing the code functionality..
IF i use the SET and GET in 1st UDF :
globalContainer.getParameter(usr); in 1st UDF than it is working sucessfully...
globalContainer.setParameter(usr,inlogin_sess);
String out = globalContainer.getParameter(usr);
return out ;
in help.sap it is mentioned that Globalcontainer objects values can be fetched among UDF's in one message mapping....
[http://help.sap.com/saphelp_nw04/helpdata/en/0f/80243b4a66ae0ce10000000a11402f/frameset.htm]
i have gone a lot of thread in sdn where Global container are used like sequence no creation etc, but every where the
GET and SET are used in SAME UDF...
any clue where is leak..
Regards,
ashutosh RHi Abhishek
Your point is legimate, but for my their is no such issue..
even i try to use it as :see image..
[http://www.screenshots.cc/show.php/14137_GlobalVariable.JPG.html]
UDF1 :
globalContainer.setParameter(usr,inlogin_sess);
return any value :
and in UDF2
String out = globalContainer.getParameter(usr);
return out ;
mainting the sequence
My concern is object globalContainer is local in UDF1, so it will through nullpointer ,if we try to access in UDF2.
if we declare globalContainer in edit jave -GlobalVariables also, still it is having the error..
Regards
AshutoshR -
Message mapping problem / experts needed / UDF?
Hello experts,
I have the following problem in a message mapping:
Source structure is as follows:
- Node a (min 1, max 999)
- Subnode b (min 0, max 999)
- Each Subnode b has the element "number" (1,1)
This structure must be mapped to the following target structure:
- Node c (1,999)
- Subnode d (0,999)
- Each subnode d has the following elements:
- e1
- e2
- e3
- e11
1 Source node a should create 1 target node c.
All numbers in all subnodes b of one source node a should be mapped to the e1, e2,...e11 elements of the target structure. As one target node d can only contain up to eleven numbers, there must be several d nodes.
I have already tried to create a UDF, but it does not work.
Any experts who would like to share their knowledge?
Thanks in advance.
CHRISTOPH
Edited by: Christoph G. on Apr 23, 2008 10:46 PMHello again,
meanwhile I have worked hard on it and I have found the solution (just one UDF (queue function) which gets the article numbers as well as constant(targetField). So the UDF covers the creation of the "groups" as well as the mapping of the article numbers.
It was really interesting and it made me ambitious to find the solution myself I do not have access to the system today, but I will post my solution as far as I have access again. Maybe you still want to search for a solution? It really may be fun, just like some kind of a puzzle game.
In order to make it more clear, here comes the source and target structure with an example. Let me once more explain it: In the source, there are positions, each with unlimited article numbers. Each position will create a targetPosition. The node "targetPosition" has the subNode "articlenrs" (unbounded). Articlenrs has 11 differnet elements, calles a1, a2, a3, ..., a11. That means, all article numbers from a source postion should be mapped to "groups of 11 target article numbers". Please be aware the there are 11 differnet target fields for article numbers: a1, a2, ... a11.
I think that' why the solution of Liang Ji and Rohit Kalugade will not work...
SOURCE
<position>
<articlenr> 123 </articlenr>
<articlenr> 456 </articlenr>
<articlenr> 4783 </articlenr>
<articlenr> 123 </articlenr>
<articlenr> 456 </articlenr>
<articlenr> 4783 </articlenr>
<articlenr> 123 </articlenr>
<articlenr> 456 </articlenr>
<articlenr> 4783 </articlenr>
<articlenr> 123 </articlenr>
<articlenr> 496 </articlenr>
<articlenr> 4783 </articlenr>
. (unbounded)
</positon>
<position>
<articlenr> 543 </articlenr>
<articlenr> 865 </articlenr>
<articlenr> 643 </articlenr>
</positon>
TARGET
<targetPosition>
<articlenrs>
<a1> 123 </a1>
<a2> 456 </a2>
<a3> 4783 </a3>
<a11> 496 </a11>
<articlenrs>
<articlenrs>
<a1>4783 </a1>
</articlenrs>
</targetPosition>
<targetPosition>
<articlenrs>
<a1> 543 </a1>
<a2> 865 </a2>
<a3> 643 </a3>
</articlenrs>
</targetPosition>
Thanks,
Christoph
Edited by: Christoph G. on Apr 30, 2008 10:20 AM -
UDF works in Message Mapping but not in Interface Mapping
Hello,
I have encountered a very strange problem. I use a simple UDF in a message mappings which imports a class that has been imported as "imported archive".
This works perfectly fine when testing the message mapping itself.
However when I execute the message mapping within a interface mapping I get a Java Error indicating that resources are missing (com.sap.aii.ib.core.mapping.ResourceNotFoundException) This error refers to a missing class.
How can this be? Message mapping works but not when using it in a interface mapping.
Do you have any idea?Hello,
this is what I have already tried, with the same result. But now I have come to a conclusion. It is a little bit tricky, but maybe also helpful for others:
A method of a class (part of the imported archived) itself calls a class which throws an exception. This exception however is handled by the method itself and does not affect the overall outcome.
In the message mapping itself you do not see the error message, only in the interface mapping. Result however is the same.
Maybe the trace level is set different for mesage and interface mapping.....
Maybe you are looking for
-
I updated my MacBook Pro with new software and when my
computer asked me for my password to log in, it said that my password was wrong and wouldn't let me use my Apple ID to reset it. When I know the password was right.
-
Authorization check for cost centre
Hi , Im creating a zprogram ,in which i give bukrs,kostl,kokrs,lednr,...etc in the select options..Can somebody tell , how to create restricted access for individuals who are able to view other cost centres that they are not normally responsible for.
-
We have one report which will process every night which is running good from couple of years. Today that report is running for ever. I extrated sql from that report and if I run that sql by giving * after select, it is giving result with in one minut
-
Exchange Server 2013 deployment on VMware Fault Tolerance
Hi People, Instead of using the DAG feature on the Exchange Server 2013, so what is the caveats in deploying the Exchange Server 2013 stand alone and then implementing the Vmware FT or at least HA to give the availability at the Hypervisor level ?
-
I bought my son an iPod touch 5th generation. When I go to settings the title bar says icloud. My iphone, my wife's iphone, and my other son's iPod touch says settings. Can someone help explain why this is?