Application Development and Automation 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: 
Read only

create BOM , CSAP_MAT_BOM_CREATE

Former Member
0 Likes
3,672

Hi,

i have some problems with the call function mentioned above.

First let me show the code:

************************************

*- Kopfdaten füllen

wa_tstko-base_quan = '1'.

wa_tstko-bom_text = text-t11. "'Stücklistentext'.

APPEND wa_tstko TO xt_tstko.

  • hilfsfeld für Stücklistenposition

DATA: lh_item1(4) TYPE c VALUE '0000'

, lh_item(4) TYPE c.

LOOP AT xt_hstb WHERE box = 'X'.

*- Positionsdaten füllen

ADD 10 TO lh_item1.

SHIFT lh_item1 LEFT DELETING LEADING space.

CONCATENATE '00' lh_item1 INTO lh_item.

CLEAR xt_tstpo.

wa_tstpo-item_no = lh_item.

wa_tstpo-item_categ = 'L'. "Mußeingabe

wa_tstpo-component = xt_hstb-n_matnr. "Mußeingabe

wa_tstpo-comp_qty = xt_hstb-menge. "Mußeingabe

wa_tstpo-comp_unit = xt_hstb-mmein.

wa_tstpo-item_text1 = xt_hstb-ojtxb.

APPEND wa_tstpo TO xt_tstpo.

ENDLOOP.

CALL FUNCTION 'CALO_INIT_API'.

CALL FUNCTION 'CSAP_MAT_BOM_CREATE'

EXPORTING

material = xl_matnr

plant = xp_werks

bom_usage = 'L'

valid_from = xl_datuv

  • CHANGE_NO =

  • REVISION_LEVEL =

i_stko = xt_tstko

  • FL_NO_CHANGE_DOC = ' '

  • FL_COMMIT_AND_WAIT = ' '

  • FL_CAD = ' '

  • FL_DEFAULT_VALUES = 'X'

IMPORTING

  • FL_WARNING = xh_flg_warning

bom_no = xh_stlnr

TABLES

t_stpo = xt_tstpo

EXCEPTIONS

error = 1

OTHERS = 2

********************

i always get following dump.

exception: ..... KEY_INCOMPLETE....

????????????

Does anybody have some answers for that problem?

thx

Thomas

Hi,

i have some problems with the call function mentioned above.

First let me show the code:

************************************

*- Kopfdaten füllen

wa_tstko-base_quan = '1'.

wa_tstko-bom_text = text-t11. "'Stücklistentext'.

APPEND wa_tstko TO xt_tstko.

  • hilfsfeld für Stücklistenposition

DATA: lh_item1(4) TYPE c VALUE '0000'

, lh_item(4) TYPE c.

LOOP AT xt_hstb WHERE box = 'X'.

*- Positionsdaten füllen

ADD 10 TO lh_item1.

SHIFT lh_item1 LEFT DELETING LEADING space.

CONCATENATE '00' lh_item1 INTO lh_item.

CLEAR xt_tstpo.

wa_tstpo-item_no = lh_item.

wa_tstpo-item_categ = 'L'. "Mußeingabe

wa_tstpo-component = xt_hstb-n_matnr. "Mußeingabe

wa_tstpo-comp_qty = xt_hstb-menge. "Mußeingabe

wa_tstpo-comp_unit = xt_hstb-mmein.

wa_tstpo-item_text1 = xt_hstb-ojtxb.

APPEND wa_tstpo TO xt_tstpo.

ENDLOOP.

CALL FUNCTION 'CALO_INIT_API'.

CALL FUNCTION 'CSAP_MAT_BOM_CREATE'

EXPORTING

material = xl_matnr

plant = xp_werks

bom_usage = 'L'

valid_from = xl_datuv

  • CHANGE_NO =

  • REVISION_LEVEL =

i_stko = xt_tstko

  • FL_NO_CHANGE_DOC = ' '

  • FL_COMMIT_AND_WAIT = ' '

  • FL_CAD = ' '

  • FL_DEFAULT_VALUES = 'X'

IMPORTING

  • FL_WARNING = xh_flg_warning

bom_no = xh_stlnr

TABLES

t_stpo = xt_tstpo

EXCEPTIONS

error = 1

OTHERS = 2

********************

i always get following dump.

exception: ..... KEY_INCOMPLETE....

????????????

Does anybody have some answers for that problem?

thx

Thomas

3 REPLIES 3
Read only

Former Member
0 Likes
1,758

HI, I have exactly the same issue.

Can anybody help us?

Thank you!

Regards,

Zaya

Read only

0 Likes
1,758

Give a example.

this program can create bom succcess.but add stpu(subitem) ,have some problem.

REPORT ZPDM_CREATEBOM .

DATA: i_stko like STKO_API01.

data: T_STPO like table of STPO_API01 WITH HEADER LINE.

data: T_STPU like table of STPU_API01 WITH HEADER LINE.

data: BOM_HEADER like BICSK.

DATA: return TYPE char100,

return2 TYPE char100.

i_stko-BASE_QUAN = 1.

T_STPO-ITEM_CATEG = 'L'.

T_STPO-ITEM_NO = '0010'.

T_STPO-COMPONENT = '52008022702'.

T_STPO-COMP_QTY = '10'.

APPEND T_STPO.

T_STPO-ITEM_CATEG = 'L'.

T_STPO-ITEM_NO = '0020'.

T_STPO-COMPONENT = '52008022701'.

T_STPO-COMP_QTY = '20'.

APPEND T_STPO.

T_STPU-POINTER = 20.

T_STPU-UPOSZ = '0001'.

T_STPU-EBORT = 'A1'.

T_STPU-UPMNG = '10'.

APPEND T_STPU.

T_STPU-POINTER = 20.

T_STPU-UPOSZ = '0002'.

T_STPU-EBORT = 'A2'.

T_STPU-UPMNG = '10'.

APPEND T_STPU.*

CALL FUNCTION 'CSAP_MAT_BOM_CREATE'

EXPORTING

material = 'FERT005'

PLANT = '1000'

bom_usage = '1'

  • VALID_FROM =

CHANGE_NO = 'ECO200909096'

  • REVISION_LEVEL =

i_stko = i_stko

  • FL_NO_CHANGE_DOC = ' '

  • FL_COMMIT_AND_WAIT = ' '

  • FL_CAD = ' '

  • FL_DEFAULT_VALUES = 'X'

  • IMPORTING

  • FL_WARNING =

  • BOM_NO =

TABLES

T_STPO = T_STPO

  • T_DEP_DATA =

  • T_DEP_DESCR =

  • T_DEP_ORDER =

  • T_DEP_SOURCE =

  • T_DEP_DOC =

  • T_LTX_LINE =

T_STPU = T_STPU

EXCEPTIONS

ERROR = 1

OTHERS = 2

.

Read only

Former Member
0 Likes
1,758

For update of STPU you should check this note which explain the correct usage.

Note 698048 - CSAP_MAT_BOM_READ: Identifier for subitems