Application Development Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 

bommat03 extention for RET ext data for BOM

Former Member
0 Kudos

Hello everyone,

I have IDOC extension issue.

The system is using Fm IDOC_INPUT_BOMMAT to populate material Bom data.

basic idoc used : BOMMAT03

But It doesnot post, "RET ext." view of Bom Header.This view has data fields like

ZZ_ENTGEW taking weight

ZZ_ROHGEW gross weight from STKO table.

I created a segment with those extra custom fields and extended bommat03.I also copied IDOC_INPUT_BOMMAT and created Z_IDOC_INPUT_BOMMAT.

How do I handle my extension in Z_IDOC_INPUT_BOMMAT?

what configs have to be done so that the existing process code can call Z_IDOC_INPUT_BOMMAT and also corresponds to the new extension

Thanks.

Message was edited by:

Nuthan

Message was edited by:

Nuthan

1 ACCEPTED SOLUTION

gajendra_bhakuni
Active Participant
0 Kudos

Hello Nuthan,

In the copied FM you just need to find the segment (SAP standard) after/under which you have added the extension (Z segment).

After the population of the SAP standard segment you just need to populate your Z segment (extension) fields (ZZ_ENTGEW and ZZ_ROHGEW) and then append the Z-segment to the idoc_data table.

it_edidd-segnam = 'Z-segmentname'

it_edidd-sdata = internal table of type Z-segment

append it_edidd.

it_edidd is the table which is currently used in the program to store data records.

Hope this helps.

Regards,

Gajendra.

3 REPLIES 3

gajendra_bhakuni
Active Participant
0 Kudos

Hello Nuthan,

In the copied FM you just need to find the segment (SAP standard) after/under which you have added the extension (Z segment).

After the population of the SAP standard segment you just need to populate your Z segment (extension) fields (ZZ_ENTGEW and ZZ_ROHGEW) and then append the Z-segment to the idoc_data table.

it_edidd-segnam = 'Z-segmentname'

it_edidd-sdata = internal table of type Z-segment

append it_edidd.

it_edidd is the table which is currently used in the program to store data records.

Hope this helps.

Regards,

Gajendra.

0 Kudos

Hi Gajendra,

Thanks a lot for the response.

my Zsegment ZE1RET is under E1STKOM segment

when c_segnam_e1stkom

perform segment_to_itab using 'E1STKOM' 'STKOB'

'STKOB' hlp_tabix.

(thro segment_to_itab, They are storing the values from segment to internal tables where the field name matches)

then save internal tables in database via (external-)APIs

(Structure STKOB has fields of E1STKOM as well as ZE1RET)

I think I just need to put my segment data to STKOB.

finally they are using CALL FUNCTION 'CSAP_MAT_BOM_CREATE'

to post

0 Kudos

Hi Nuthan,

Yes you are right.

You can follow the approach used currently with the exiting form segment_to_itab.

Create a new form routine similar to the one existing.

This will be called after perform segment_to_itab using 'E1STKOM' 'STKOB'

'STKOB' hlp_tabix.

Hope this will solve the problem.

Regards,

Gajendra.