根據物料與工廠展BOM時用FM: CS_BOM_EXPL_MAT_V2
示例:(此例子只展一層)
CALL FUNCTION 'CS_BOM_EXPL_MAT_V2'
EXPORTING
capid = 'PP01'
datuv = datuv
auskz = 'X' " 報廢
mdmps = 'X' " 展虛理件
mehrs = 'X' " 展多層
emeng = l_menge
mtnrv = matnr
werks = werks
TABLES
stb = lt_stb
EXCEPTIONS
alt_not_found = 1
call_invalid = 2
material_not_found = 3
missing_authorization = 4
no_bom_found = 5
no_plant_data = 6
no_suitable_bom_found = 7
conversion_error = 8
OTHERS = 9.
如果需要展到底層,則需要設置參數參數mehrs = 'X' 且mdmps = ' '。
註釋:一般不需要虛擬物料,則刪除dumps不爲空的數據。如果爲虛擬物料,則dumps = 'x'.注意是小寫
DELETE lt_stb WHERE dumps IS NOT INITIAL.
如果要查看一個原材料都在哪個成品中用到,則用FM:CS_WHERE_USED_MAT
示例:
CALL FUNCTION 'CS_WHERE_USED_MAT'
EXPORTING
datub = sy-datum
datuv = sy-datum
matnr = x_matnr
* POSTP = ' '
* RETCODE_ONLY = ' '
stlan = c_stlan
werks = x_werks
* IMPORTING
* TOPMAT =
TABLES
wultb = t_stpov
equicat = t_cscequi
kndcat = t_cscknd
matcat = t_cscmat
stdcat = t_cscstd
tplcat = t_csctpl
EXCEPTIONS
call_invalid = 1
material_not_found = 2
no_where_used_rec_found = 3
no_where_used_rec_selected = 4
no_where_used_rec_valid = 5
OTHERS = 6.
其中stlan可以參考 mast-stlan,表示BOM的用途,如生產、研發
得到的結果在 t_stpov 內表中