cancel
Showing results for 
Search instead for 
Did you mean: 

Help required on Value Mapping

manikandan_shanmugam3
Active Participant
0 Kudos

Dear All,

As i know there will be a communication between ID and IR at run time when value mapping is called.

We have to use the same value mapping for 30+ target fields and wanted to know whether Value mapping(IR and ID communication) will be called 30+ times or it will be called only once and its instance will be saved at run time and will use the same instance for other target fields.

if value mapping will be called for each target field mapping then it will reduce the performance?

Regards,

Manikandan

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Value mappings sit in the java value mapping cache (can be monitored from rwb). So it is in process communication (one java class calls another). Do not worry about performance.

As of PI 7.1 you can join multiple target elements in one mapping (just pull them in). This is handy for all sorts of lookups (rfc, soap, ...) but not for this usecase.

manikandan_shanmugam3
Active Participant
0 Kudos

Hi Andreas & Mark,

As i understand from your replies, both technique are same as java class will be called at run time in the case of UDF and Value Mapping , pls correct me if my understanding is wrong also we decide to use value mapping.

pls explain if my choice is wrong.

Thanks,

Manikandan

Former Member
0 Kudos

My answer is: Value mapping is fast enough and you do not need to tune it (especially not at the cost of making the solution less operations friendly).   

Answers (2)

Answers (2)

iaki_vila
Active Contributor
0 Kudos

Hi Manikandan,

Go ahead with value mapping as Andreas says.

According to SAP documentation you have mainly three options:

- Fix values function: the quicker to develop but you have configuration values in design time. That could be a problem if you need to change frequently the values, values only in message mapping level and it's not so much elegant

- Value-Mapping: it's efficent as Fix values and you have configuration values in configuration time. The best problem comes if you have so much values to introduce manually and it is not so much intuitive.

- Mapping lookups (RFC or JDBC): the best way if you have so much values but it's the less efficent because you are connecting to another system.

The Amit solution can be more efficent but it's more complicated to develop too.

Regards and good look.

markangelo_dihiansan
Active Contributor
0 Kudos

Hello,

I'm pretty sure it would call the value mapping per field. What you can do is:

1. Call the value mapping at target Root Node level

2. Save the values via UDF by setting a variable(s) in the global container

3. Call the  variable(s) using UDF and use it in your field mapping.

Hope this helps,
Mark