Question:
I have some trouble in using fm “BAPI_SALESORDER_CREATEFROMDAT2”, I couldn’t add any configuration into the variant BOM. How to resolve this problem, I write the source code below , Could anybody help me to check it ??
Thank you in advance.
****code*********
REPORT Zcreate_sales_order .
data: i_order_header_in like BAPISDHD1,
i_order_header_inx like BAPISDH1X,
i_order_partners like BAPIPARNR occurs 0 with header line,
i_order_items_in like BAPISDITM occurs 0 with header line,
i_order_items_inx like BAPISDITMX occurs 0 with header line,
i_order_schedules_in like BAPISCHDL occurs 0 with header line,
i_order_cfgs_ref like BAPICUCFG occurs 0 with header line,
i_order_cfgs_inst like BAPICUINS occurs 0 with header line,
i_order_cfgs_value like BAPICUVAL occurs 0 with header line,
i_return like BAPIRET2 occurs 0.
data: e_vbeln like bapivbeln.
data: e_vbak like vbak,
e_bapisdhd like bapisdhd.
e_vbak-auart = 'ZSK'.
e_vbak-vkorg = 'S001'.
e_vbak-vtweg = '11'.
e_vbak-spart = '00'.
e_vbak-augru = '001'.
CALL FUNCTION 'MAP_VBAK_TO_BAPISDHD'
EXPORTING
VBAK = E_VBAK
CHANGING
BAPISDHD = e_bapisdhd
EXCEPTIONS
ERROR_CONVERTING_CURR_AMOUNT = 1
OTHERS = 2
move-corresponding e_bapisdhd to i_order_header_in.
i_order_header_in-refobjtype = 'BUS2032'.
clear i_order_header_in-wbs_elem.
refresh i_order_partners.
clear i_order_partners.
i_order_partners-partn_role = 'AG'.
i_order_partners-partn_numb = 'C00002'.
append i_order_partners.
refresh i_order_items_in.
clear i_order_items_in.
i_order_items_in-itm_number = '00010'.
i_order_items_in-PO_ITM_NO = i_order_items_in-itm_number.
i_order_items_in-material = '000000004000009999'.
i_order_items_in-plant = 'PL21'.
append i_order_items_in.
refresh i_order_schedules_in.
clear i_order_schedules_in.
i_order_schedules_in-itm_number = i_order_items_in-itm_number.
i_order_schedules_in-req_qty = '1'.
append i_order_schedules_in.
refresh i_order_cfgs_ref.
clear i_order_cfgs_ref.
i_order_cfgs_ref-posex = i_order_items_in-PO_ITM_NO.
i_order_cfgs_ref-config_id = '000001'.
i_order_cfgs_ref-root_id = '00000001'.
append i_order_cfgs_ref.
refresh i_order_cfgs_inst.
clear i_order_cfgs_inst.
i_order_cfgs_inst-config_id = i_order_cfgs_ref-config_id.
i_order_cfgs_inst-inst_id = i_order_cfgs_ref-root_id.
i_order_cfgs_inst-obj_type = 'MARA'.
i_order_cfgs_inst-class_type = '300'.
i_order_cfgs_inst-obj_key = '000000004000009999'.
append i_order_cfgs_inst.
refresh i_order_cfgs_value.
clear i_order_cfgs_value.
i_order_cfgs_value-config_id = i_order_cfgs_inst-config_id.
i_order_cfgs_value-inst_id = i_order_cfgs_inst-inst_id.
i_order_cfgs_value-charc = 'DC'.
i_order_cfgs_value-value = '110V'.
append i_order_cfgs_value.
CALL FUNCTION 'CUXC_INIT'.
CALL FUNCTION 'BAPI_SALESORDER_CREATEFROMDAT2'
EXPORTING
ORDER_HEADER_IN = i_order_header_in
IMPORTING
SALESDOCUMENT = e_vbeln
TABLES
RETURN = i_return
ORDER_ITEMS_IN = i_order_items_in
ORDER_PARTNERS = i_order_partners
ORDER_SCHEDULES_IN = i_order_schedules_in
ORDER_CFGS_REF = i_order_cfgs_ref
ORDER_CFGS_INST = i_order_cfgs_inst
ORDER_CFGS_VALUE = i_order_cfgs_value.
if not e_vbeln is initial.
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
write:/ e_vbeln.
endif.
********************************************
Answer:
Urgently, please help me !!!!!!!!