使用badi ME_PROCESS_PO_CUST,前臺和bapi都會進去
METHOD if_ex_me_process_po_cust~process_item.
DATA: ls_mepoitem TYPE mepoitem,
ls_mepoheader TYPE mepoheader,
ls_customer TYPE mepo_badi_exampl,
DATA: l_head TYPE REF TO if_purchase_order_mm ,
ls_mepoitem = im_item->get_data( ).
l_head = im_item->get_header( ).
ls_mepoheader = l_head->get_data( ).
IF ls_mepoheader-bukrs+0(1) = '4' AND ls_mepoheader-bsart = 'UB' AND ls_mepoitem-reslo IS INITIAL.
mmpur_message 'E' 'OO' '000' '請輸入發貨存儲地點' '' '' ''.
lt_zpo_create type table of zpo_create,
ls_zpo_create type zpo_create.
into corresponding fields of table lt_zpo_create
read table lt_zpo_create into ls_zpo_create
with key bsart = ls_mepoheader-bsart bukrs = ls_mepoheader-bukrs lifnr = ls_mepoheader-lifnr ekorg = ls_mepoheader-ekorg.
im_item->set_data( ls_mepoitem ).
method if_ex_me_bapi_po_create_02~inbound.
ls_item type line of bapimepoitem_tp,
lt_zpo_create type table of zpo_create,
ls_zpo_create type zpo_create.
into corresponding fields of table lt_zpo_create
read table lt_zpo_create into ls_zpo_create
with key bsart = ch_poheader-DOC_TYPE bukrs = ch_poheader-COMP_CODE lifnr = ch_poheader-VENDOR ekorg = ch_poheader-PUR_GROUP.
modify TABLE ch_item from ls_item TRANSPORTING gr_basediv.