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: 

bapi

Former Member
0 Kudos

hello all,

i need to change material bom.

the field i need to change : "lead time offset",

in transaction cs02.

the fields i have are: material, date,usage,plant,

item id.

any help will be appreciated.

dana.

9 REPLIES 9

Former Member
0 Kudos

check fm..

CAVC_I_CHANGE_BOM_ITEM_DATA

nishanthbhandar
Contributor
0 Kudos

use the following FM's in conjunction.

CSAP_MAT_BOM_OPEN

CSAP_BOM_ITEM_MAINTAIN

CSAP_MAT_BOM_CLOSE

Cheers

Nishanth

0 Kudos

i tried to use those function but for some reason it didnt work.

can you pls pls pls tell me wich field do i have to fill?

cause maybe i dont fill it correctly.

when i ran the CSAP_BOM_ITEM_MAINTAIN function after i use CSAP_MAT_BOM_OPEN

it locked the transaction but not change the field.

can you tell me wich fields do i have to fill?

many thanks.

0 Kudos

You need to fill LEAD_TIME under the importing parameter I_STPO i.e. I_STPO-LEAD_TIME is the field which u need to fill.

Former Member
0 Kudos

Hi,

Use Function Module: CSAP_MAT_BOM_MAINTAIN.

Field lead time offset is available in tables parameter T_STPO, field LEAD_TIME.

Former Member
0 Kudos

It could be that u need to call the FM: BAPI_TRANSACTION_COMMIT so that a commit happens.

0 Kudos

is anyone know why it add material bom instead of change?

is there any field that i have to fill so that the function will know that?

thank you.

Former Member
0 Kudos

If you haven't tried the following:

call function 'CSAP_MAT_BOM_MAINTAIN'

exporting

...

fl_no_change_doc = 'X'

...

In the Table stpo, set the following as keys:

t1_stpo-id_itm_ctg.

t1_stpo-id_item_no.

t1_stpo-id_comp.

Those will be the key to indicate which component to change. Then change the t1_stpo-leadtime.

Make sure your effectivity is okay, sometimes that could cause problems as well.

anversha_s
Active Contributor
0 Kudos

hi,

chk this sample code.

hi

try this

REPORT ZSM_CREATE_SIMPLEBOM.

  • This code will create a material BoM for the material

  • MAINMATERIAL with the components COMPON1 and COMPON2.

  • Data Declaration

DATA:

it_bomgroup LIKE bapi1080_bgr_c OCCURS 0 WITH HEADER LINE,

it_variants LIKE bapi1080_bom_c OCCURS 0 WITH HEADER LINE,

it_items LIKE bapi1080_itm_c OCCURS 0 WITH HEADER LINE,

it_matrel LIKE bapi1080_mbm_c OCCURS 0 WITH HEADER LINE,

it_itemas LIKE bapi1080_rel_itm_bom_c OCCURS 0 WITH HEADER LINE,

it_return LIKE bapiret2 OCCURS 0 WITH HEADER LINE.

  • Fill the data

  • Material BoM Group Header Data

CLEAR it_bomgroup.

it_bomgroup-bom_group_identification = 'BAPI_SMP_COL1'.

it_bomgroup-object_type = 'BGR'.

it_bomgroup-object_id = 'SIMPLE1'.

it_bomgroup-bom_usage = '5'. " YOU COULD CHANGE THE BOM USAGE TO YOUR

NEEDS

it_bomgroup-ltxt_lang = sy-langu.

it_bomgroup-technical_type = ' '.

it_bomgroup-bom_text = 'Simple BoM - FM'.

APPEND it_bomgroup.

  • Header Details of the different variants

CLEAR it_variants.

it_variants-bom_group_identification = 'BAPI_SMP_COL1'.

it_variants-object_type = 'BOM'.

it_variants-object_id = 'SIMPLE1'.

it_variants-alternative_bom = '01'.

it_variants-bom_status = '01'.

it_variants-base_qty = '1.000'.

it_variants-valid_from_date = sy-datum.

it_variants-function = 'NEW'.

APPEND it_variants.

  • Details of the items of the variants

CLEAR it_items.

it_items-bom_group_identification = 'BAPI_SMP_COL1'.

it_items-object_type = 'ITM'.

it_items-object_id = 'SIMPLE1'.

it_items-item_no = '0010'.

it_items-item_cat = 'L'.

it_items-component = 'COMPON1'.

it_items-comp_qty = '2'.

it_items-valid_from_date = sy-datum.

APPEND it_items.

CLEAR it_items.

it_items-bom_group_identification = 'BAPI_SMP_COL1'.

it_items-object_type = 'ITM'.

it_items-object_id = 'SIMPLE1'.

it_items-item_no = '0020'.

it_items-item_cat = 'L'.

it_items-component = 'COMPON2'.

it_items-comp_qty = '3'.

it_items-valid_from_date = sy-datum.

APPEND it_items.

  • Details of the materials of the different variants

CLEAR it_matrel.

it_matrel-bom_group_identification = 'BAPI_SMP_COL1'.

it_matrel-material = 'MAINMATERIAL'.

it_matrel-bom_usage = '5'.

it_matrel-alternative_bom = '01'.

APPEND it_matrel.

  • Linking items to the corresponding variants

CLEAR it_itemas.

it_itemas-bom_group_identification = 'BAPI_SMP_COL1'.

it_itemas-sub_object_type = 'ITM'.

it_itemas-sub_object_id = 'SIMPLE1'.

it_itemas-super_object_type = 'BOM'.

it_itemas-super_object_id = 'SIMPLE1'.

it_itemas-valid_from_date = sy-datum.

it_itemas-function = 'NEW'.

APPEND it_itemas.

  • Create variants

CALL FUNCTION 'BAPI_MATERIAL_BOM_GROUP_CREATE'

EXPORTING

all_error = 'X'

TABLES

bomgroup = it_bomgroup

variants = it_variants

items = it_items

materialrelations = it_matrel

itemassignments = it_itemas

return = it_return.

CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'.

LOOP AT it_return.

WRITE:/ it_return-type, it_return-id, it_return-number,

it_return-message.

ENDLOOP.

reward points if it helps

Regards

anver

if hlped mark points