cancel
Showing results for 
Search instead for 
Did you mean: 

How do I surpress a value in a context change?

Former Member
0 Kudos

Hi all,

I have many mappings defined, and not long ago, our SAP system updated to 7.5. Now there are some problems regarding the equalsS method in a message mapping whenever the source node is not present.

I have two queues, each queue representing one xml-element. Elements of both queues go through an equalsS function, and yield true or false. These elements are all optional, but here comes the tricky part: if both input queues are unequal in size (unequal amount of nodes in the source message), I get weird behavior in the result queue:

I want the result to yield true, false, false. But instead, I get a true in the last result, because the value of the previous input node is used.

Any ideas on how I can do this?

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hi Zakaria

Why dont you use "MapWithDefault" between source field and equalS

if souce field does not come then it will send blank in that case your queues will look like this

bla               bla          true

bla               bla2        false

<blank>        bla         false

Regards

Osman

Former Member
0 Kudos

That would mean that I have to apply this solution to all mappings, which is a possibility, but not a pretty one. I forgot to mention that in 7.3 everything was working fine. In 7.3 the field did not contain the previous input value but a <null> value.

I didn't change anything regarding the integration scenario. The only difference is the update to 7.5. Is there a solution for not having <null> after the update

former_member186851
Active Contributor
0 Kudos

Zakaria can you be more specific on what you wish to achieve

Former Member
0 Kudos

I want to have a null value if the source element is not there, like I used to have in version 7.3. I don't want to change the mapping for achieving this.

In 7.3 I get null, but in 7.5 I get the value of the previous input-element. I want the null back

former_member186851
Active Contributor
0 Kudos

Mapping functionality in your case is same for all PI versions.

Check the same context is maintained for the node by right clicking it on it.

Former Member
0 Kudos

The context is the same. I checked that first. I didn't change anything in the mapping. I only updated SAP

former_member213558
Active Participant
0 Kudos

in respective operation mapping is that the only message mapping called? Can you check your operation mapping with 7.3 to 7.5.   Mapping functionalities are same for all PI version.

former_member186851
Active Contributor
0 Kudos

Hello Zakaria,

The mapping functions are same only for sure.

Please try with map with default then.

and please post how your getting in PI 7.31,I mean the queue.

iaki_vila
Active Contributor
0 Kudos

Hi Zakaria,


The context is the same. I checked that first. I didn't change anything in the mapping. I only updated SAP

Depending your PI origin version any change can be produced, for example the context treatment.

In this note talks a similar problem than your that a true value is created instead of surpress value:   1570277 - Issues in mapping after upgrade to PI 7.10/7.11  or  1564293 - Equals function returns wrong results.

I know they are not your PI version, but you should take into account these problems before to do an upgrade.

Ask to SAP if there is any patch for PI 7.5 version, i've just now i haven't found any note for 7.5.

The other alternative is to avoid this issue changing your mapping as the other SCN members have pointed.

Regards.

Answers (2)

Answers (2)

Former Member
0 Kudos

what is your SP level on 7.5? Refer the below notes. It might give some insights.

2185824 - Graphical Mapping combination - 'CopyValue', any Standard Functions from Text category and NodeFunctions give wrong output

former_member186851
Active Contributor
0 Kudos

Hello Zakaria,

for input1 use map with default function with blank value in it.

Former Member
0 Kudos

Hi,

Thanks, I'll keep this answers in mind. We asked SAP for a patch. Let's see what they say..