cancel
Showing results for 
Search instead for 
Did you mean: 

Mapping Error

Former Member
0 Kudos

Hello Guru's

I have a functional error in my mapping and I do not understand why. Hope some can help me out.

This is the case: I have a mapping see URL for a picture of it

http://img175.imageshack.us/img175/2262/emailos0.jpg

The element Email at the source has the following occurences 0..1 The field Voornaam does exists and contains a value. Now I am expecting that the field Email at the target end is going to be created but it's not... I do not understand why...

Best regards,

Guido

Accepted Solutions (1)

Accepted Solutions (1)

prabhu_s2
Active Contributor
0 Kudos

check with the display queue and u can get to know the issue

Former Member
0 Kudos

The queue's are giving me the following results:"

- queue email exists returns false

- queue email equals not Null returns suspress

- queue AND, OR both returns suspress and that is strange, because the OR should return TRUE.

Anyone got an explaination for me?

Former Member
0 Kudos

Hi,

You should not compare the EMAIL with empty constatnt. In that place use only Exist and remove the AND option and comapring with empty constant. Then you will get what ever you are expecting.

Please don't check the EMAIL context with empty constant. It always give false when empty and has the value.Exist will do the same for you.

Warm Regards,

Vijay

Message was edited by:

Gangisetty Vijaya Bhaskarudu

former_member192892
Active Contributor
0 Kudos

Hey Guido

Please check the exist first for both the nodes and then check for the null condition..

Also i'm not very sure whether giving an empty string as a constant to string equals considers it as a null

Thanks

Varun

former_member192892
Active Contributor
0 Kudos

Hey Guido

Please check the exist first for both the nodes and then check for the null condition..

Also i'm not very sure whether giving an empty string as a constant to string equals considers it as a null

Thanks

Varun

Former Member
0 Kudos

I think I understand the problem. When I check the Queue's for the Email not equals null it gives me a Suppress and I put this value into the boolean AND. That boolean doesn't know how to handle it and gives back a SUPPRESS to the OR boolean and so on...

But what I do not understand is that, when I go to help.sap.com there it states that: Non-Boolean values are interpreted as false. So is this an XI bug or is SUPPRESS an exception to that rule???

former_member192892
Active Contributor
0 Kudos

Hmmm....

I'm not 2 sure about dat Guido...But is a nice doubt.. I'm watching this thread if some1 answers dat

Varun

Former Member
0 Kudos

Hi ,

It is not a bug , Sometimes it is helpful to analyse. This value can be compare with the ResultList.SUPPRESS. Sometimes it is helpful.

Warm Regards,

Vijay

Former Member
0 Kudos

Suppress is exception.

I have created this little Context UDF, which I called "SuppressToFalse" to help me around it:

String retVal;

if (a.length == 0)

retVal = "false";

else

retVal = a[0];

result.addValue(retVal);

Former Member
0 Kudos

So in fact this really means that giving a SUPPRESS into a boolean, the boolean doesn't know what to do with it, right? It also means that not all NON-Boolean values return false....... so at this moment still one question open... Is it a bug or an exception to the rule, or I am being to short minded???

Former Member
0 Kudos

Where does it states that supress is an exception? Thnx for all the help guys!!!

Former Member
0 Kudos

Hi,

Remember that a Suppress is actually the <b>absence</b> of a value.

Former Member
0 Kudos

Thnx, I was forgotten that, now it al makes sense.

Thnx guys!

Answers (2)

Answers (2)

santhosh_kumarv
Active Contributor
0 Kudos

Do a mapping like this with the if else structure.

IF email EXISTS AND email NOTEQUAL constant THEN mail ELSE voornaam. Map this to the target email node..

Regards

Santhosh

santhosh_kumarv
Active Contributor
0 Kudos

Hi,

Why dont u try this with a IF mapping function..

Regards

Santhosh

Former Member
0 Kudos

Hi,

I would like to understand the problem first and then building another solution.

Best regards,

Guido

Former Member
0 Kudos

It's also not the same functionality because we need to check if the element Email exists and not equals Null or if the element Voornaam exists and the create the element email at the target side.