cancel
Showing results for 
Search instead for 
Did you mean: 

Mapping Error

Former Member
0 Kudos

Hi PI Gems,

I have 1 query on mapping:

Input:

PART

--mode Attri

PART_NUMBER Ele

HIST_PART Ele

-OLD_PART Ele

DISC Ele

-LONG_D Ele

-SHORT_D Ele

PART

--

--

Output:

IDOC

E1MARAM

E1MKTM

IDOC

E1MARAM

E1MKTM

Problem is, that i am getting Multiple IDOC's and Multiple E1MARAM segments in output for each PART & HIST_PART respectively. But getting E1MKTM in first 2 IDOC's, getting E1MKTM in 3rd IDOC too, but with no Field Values.

PART -->index[1,1] -->divide -->split by value >collpcon>IDOC

constant[1]

HIST_PART-->E1MARAM

DESC-->E1MKTM

Please advice what's wrong i am doing.

Regards

Kamal

Accepted Solutions (0)

Answers (1)

Answers (1)

rajasekhar_reddy14
Active Contributor
0 Kudos

we are not sure about your bussiness requirement. but if values not coming to target then use disply queue and debug the mapping.

Former Member
0 Kudos

Hi Raja,

We are doing the same....

But problem is, we need new idoc for each part

under that idoc we need e1maram segment for each hist_part

and under e1maram segment, we need e1maktm segment for each desc.

we are getting idocs and e1maram segments correctly, but not e1maktm.

ex:

part

hist_part

desc1

part

hist_part

hist_part

desc2

output

idoc

e1maram

e1maktm --> desc1

idoc

e1maram

e1maktm -->desc2

e1maram

e1maktm --> empty: ideally desc2 should come

here in second idoc, e1maktm is coming out to be empty.

but if we give 1 more desc in input, say desc3

idoc

e1maram

e1maktm --> desc1

idoc

e1maram

e1maktm -->desc2

e1maram

e1maktm --> desc3

but correct will be:

idoc

e1maram

e1maktm --> desc1

idoc

e1maram

e1maktm -->desc2, desc3

e1maram

e1maktm --> desc2, desc3

Please advice and help.

Regards

KDS

rajasekhar_reddy14
Active Contributor
0 Kudos

useOneAsMany node function. it fulfill your requirement.

Former Member
0 Kudos

Hi Raja,

Where exactly I have to use "useonetomany"??

please find logic i used

part -->IDOC

Hist_Part_No >index[1,1]>divide>ceil>split by value --> E1MARAM

constant[1]

Disc --> E1MAKTM

Here

Part => FILE HEADER LEVEL

Hist_Part_No & Disc are Elements of PART, and at same level

IDOC ==> TARGET HEADER

E1MARAM ==> Segment of IDOC

E1MAKTM ==> Segment of E1MARAM

Regards

Kamal