cancel
Showing results for 
Search instead for 
Did you mean: 

PI Mapping Issue

former_member221632
Participant
0 Kudos

Hi ,

  currently Im facing an issue in graphical mapping, its and outbound scenario triggering an SHPMNT Idoc from ECC,

here Im using If Else condition(pls ref attachment) , If the first conditiion is true the value is poplation to the receiving field where as if my else conditon is true the value is not populating to the output field. can some one give an quick idea on this.

This is when i checked in the mapping test, this is the queue details on clicking ‘if else’.

queue value in IF then Else node.

Accepted Solutions (0)

Answers (2)

Answers (2)

gagandeep_batra
Active Contributor
0 Kudos

Hi,

Can you check your condition one more time. because

if your condition is true then it transfer the  "werks" value to transfer means when werks is exist then it trasfer.

but in else condition    it is also transfer the  werks while it is no exist.

that is why it is not giving any value at else side

former_member221632
Participant
0 Kudos

Hi ,

In my If Else condition,

1) the first condition will check for WERKS from segment E1EDL24 if this exist then the corresponding value will be populated to the RCVPRN field to the control record segment which is working as expected .

2) when conditon fails, this check the logic in Else condition(ref above screen shot) i.e. in the segment E1EDT44 if the combination of Qualf = 001 and Knote = CW0001 exist then take the corresponding E1EDT44-WERKS and populate to RCVPRN.

the issue is, my if condition got failed and in the else condition the value is not populating to target RCVPRN field, but when I give display queue in 'Ifelse' node I could see the value getting populated - pls ref above screenshot)  what could be the cause for this? more over when first condition fails (E1EDL24-WERKS) I could see the value get 'suppress' but I hope we need to get value as 'False' (correct me If Im wrong) is this could be the reason if so how should I overcome.

BR,

Sethu.

former_member190624
Active Contributor
0 Kudos

Hi Sethu,

Seems like context problem for WERKS(Else one). try like

WERKS--->remove context ----->split by value (Value change)----> (if-then)--->elsepart

Regards

Hari.

gagandeep_batra
Active Contributor
0 Kudos

Hi,

you the problem looks like with context use node functions to overcome.

other option is that you create duplicate subtree function for traget field RCVPRN and use one condition at one time use only if without else.

markangelo_dihiansan
Active Contributor
0 Kudos

Hello,

It could be a bug, have you tried using ifS and ifSWithoutElse?

Also can you try:

WERKS -> mapWithDefault:false -> yourIfStatement

Hope this helps,

Mark

former_member221632
Participant
0 Kudos

Hi Mark,

  No I'm using only IFelse.

here the problme is I need to populate the input value from below segment to control record segment.

markangelo_dihiansan
Active Contributor
0 Kudos

Hello,

Have you tried the mapWithDefault suggestion?

e.g WERKS-> mapWithDefault:false -> ifThenElse

The reason you are getting a suppressed output is that your exist did not output a false value.

Regards,

Mark

former_member221632
Participant
0 Kudos

Hi,

  WERKS field is getting populated from the input value and its not an contant value, though i triged but throws an exception.

is there any other hint to proceed.

BR,

Sethu.