cancel
Showing results for 
Search instead for 
Did you mean: 

Mapping Multiple Source fields to Single Target Fields with differnt Values

Former Member
0 Kudos

Hello Friends,

I am having a senario where I have to mapped multiple fileds from source str. to same Idoc Fields with ( differnt default values )

E.g Source Str.

- ShopNO

- OrderTyp

Has to mapped to Idoc Str E1EDK14-Orgid.

E.g Mapping:

So when ShopNo will mapped to E1EDK14-Orgid the default value should be "MOP" & E1EDK14-Qualf should be 019

and when OrderType will be mapped to E1EDK14-Orgid the default value should be "STD" & E1EDK14-Qualf should be 012

So I tried of using node "UseOneAsMany".....but there I cant define the vaule of field orgid, and seconly how to specify the values of field Qualf?

Do i need to write my own specify function ? or I can sovle this issue using standard avaiable functions ?

Regards,

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hi,

Is node E1EDK14 has occurence 1..1?

If yes, then it might create the problem.

Change the occurence to unbounded and then duplicate the node.

Regards,

Supriya.

Answers (5)

Answers (5)

Former Member
0 Kudos

Hi ,

Yes , you can go for the option Duplicate subtree and you can solve your problem ...

Regards,

Jude

Former Member
0 Kudos

Hi,

If you duplicate the node , this can be done in the testing TAB ...... I hope this will not solve the problem

What you can do is Concatenate all the value and pass to the target , so that if need u can seperate it ....

Regards,

Jude

Former Member
0 Kudos

> If you duplicate the node , this can be done in the testing TAB ...... I hope this will not solve the problem

This can be done on Design TAB as well.... and I hope this will solve the problem.

Regards,

Sarvesh

Former Member
0 Kudos

>P.s. You need to apply conditions on each E1EDK14 (parent node) itself, so that if conditions are ture then only it will be created at run time.

´Can you plz guide me to some kind of Douc which explain all this ?..... I am not sure, if I know or have any condition. and also have no idea how to apply for condition.

Regards,

former_member181962
Active Contributor
0 Kudos

Hi Shah,

It is pretty straight forward.

Just duplicate your target node as many times as you want.

Then map the source side fields to the fields under the nodes.

The qualifiers should be mapped with Constants.

The node itself would be mapped to a constant if you want that node to be present all the time.

Regards,

Ravi Kanth Talagana

Former Member
0 Kudos

Hi Ravi,

Thanks for your reply....

I am facing following problem... when I try to duplicate the segment and do mapping....... and then when I save, I got following error msg:

The source or target structure has been changed or could not be found in the Integration Repository. The mapping definition contains elements or attributes that do not exist in the changed structure. The relevant entries will be deleted

Target structure has no such path: /ZARVO_ORD/IDOC/E1EDK05[1]/KSCHL. Skipping mapping

Target structure has no such path: /ZARVO_ORD/IDOC/E1EDK05[1]/KRATE. Skipping mapping

Any suggestion ?

in other words, when I do duplicate it creates me the segment, but when I save it, it gets disappered .........

Regards,

Edited by: Shah H on Oct 26, 2009 3:17 PM

Former Member
0 Kudos

> in other words, when I do duplicate it creates me the segment, but when I save it, it gets disappered .........

>

As soon as you duplicate, first map some constant to E1EDK14 --> SEGMENT field and then save.

Former Member
0 Kudos

hi Sarvesh,

I tried as suggested by you, but ended-up with same results.....

I saved both segments ( for original one and copied one with some value ) but still by save, got this msg:

The source or target structure has been changed or could not be found in the Integration Repository. The mapping definition contains elements or attributes that do not exist in the changed structure. The relevant entries will be deleted

Target structure has no such path: /ZARVO_ORD/IDOC/E1EDK05[1]/@SEGMENT. Skipping mapping

Dont know what I am doing wrong !

Former Member
0 Kudos

you are doing nothing wrong! Only the thing is since you have added new duplicate segment in your target structure therefore few of the existing mapping has got unmapped, so after you duplicate E1EDK14, firs map all mandotary (required) fields (check whole mapping) and then press the save button.

So after doing so if you didn't get any warning/error then starting doing your mapping. (Also check other segment if mapping has not got disappeared for them)

Former Member
0 Kudos

I am doing exactly as you mentioned, first fill all mandantory fields and then create a new (dublicate ) segment... and then save.... got same error msg:

The source or target structure has been changed or could not be found in the Integration Repository. The mapping definition contains elements or attributes that do not exist in the changed structure. The relevant entries will be deleted

Target structure has no such path: /ZARVO_ORD/IDOC/E1EDK14[1]/@SEGMENT. Skipping mapping

Former Member
0 Kudos

Or should I filled all MUST fields in all remaing segments as well ?

Ok let me try this too...

Former Member
0 Kudos

>

> Or should I filled all MUST fields in all remaing segments as well ?

>

> Ok let me try this too...

offcourse..

Former Member
0 Kudos

Hi Sarvesh,

I have define all must field with constant.......then I duplicate the segment , fill must field there too, and then save....

but unfortunately, same result.........i am using XI 3.0... dont know why its not working

occurance is 0...12.

#

I got it now, what was the miskate........................

Edited by: Shah H on Oct 26, 2009 4:27 PM

Former Member
0 Kudos

Good, finally you made it..

Former Member
0 Kudos

Hi Shah and others,

Did you ever solve this problem? I do have the same problem. I am thnking that we should have User define function just to duplicate the node as many times as we wish but duplicating the subtree would throw up this kind of error while saving.

Please let me know if you have any ideas.

Thank you

Srini

Edited by: Srini Bhimavarapu on Jan 18, 2010 1:27 PM

It did allowed me to save after assigning some constants to duplucicated nodes. Thank you

Former Member
0 Kudos

Hi,

Your problem will be solved simply by duplicating the target segment. Right click on E1EDK14 and select create duplicate.

E.g Lets say you have 3 qualf 009, 012 & 019 then you have to duplicate E1EDK14 two times. So in toatal there will be 3 E1EDK14 segments (1 Original + 2 duplicates). Now do your mapping as per your need.

Regards,

Sarvesh

Former Member
0 Kudos

Hello Sarvesh,

Thanks for your reply. If Target Str. will be dublicated, which values then will be transfered to BACKEND ?

I mean which values SAP Idoc in backend will contain from Source Str ?

Regards,

Former Member
0 Kudos

> Thanks for your reply. If Target Str. will be dublicated, which values then will be transfered to BACKEND ?

>

> I mean which values SAP Idoc in backend will contain from Source Str ?

It will contain only those values for which your conditions will be true.

E.g. Let's say you have 3 sgements of E1EDK14, now only for 1 segment (qualf 012 for example) your condition is ture then backend will be updated for qualf 012.

P.s. You need to apply conditions on each E1EDK14 (parent node) itself, so that if conditions are ture then only it will be created at run time.

Rgards,

Sarvesh

Former Member
0 Kudos

Hi,

If there is no condition , then at runtime how will it be decided that which source field's value should go to target field?

Regards,

Supriya.

Former Member
0 Kudos

Hi,

Is there any condition for when to map ShopNo and when to map OrderType?

Pls explain that.

If its there, then this mapping is possible using standard function.

Regards,

Supriya.

Former Member
0 Kudos

Hello Supriya,

Thanks for your reply. No there is no specific condition, in deed both fields has to be mapped...

Plz suggest in this regard.

Regards,

Shah