Passing Default values to ME51N(ME_PROCESS_REQ_CUST)
Passing Default values to ME51N(PR Creation)
1.Go to T-code SE18.
2.Enter BADI Name ME_PROCESS_REQ_CUST
3.Click on display.
4.click on 'implementaion' in Menu bar.
5.click on 'create'.
6.Enter Implementation name and click on enter
7.Enter short description.
8.Double click on 'Process Item' method in 'Interface' Tab.
9.write the code like below
METHOD /dci/glb_if_me_proc_req_cust~process_item.
TYPES: BEGIN OF l_s_ekko_ekpo,
ebeln TYPE ebeln,
werks_i TYPE ewerk,
matkl_i TYPE matkl,
meins_i TYPE bstme,
netpr_i TYPE bprei,
peinh_i TYPE epein,
konnr TYPE konnr,
waers TYPE waers,
ebelp_i TYPE ebelp,
END OF l_s_ekko_ekpo.
DATA: l_w_ekko_ekpo TYPE l_s_ekko_ekpo.
DATA: wa_data TYPE mereq_item,
wa_datax TYPE mereq_itemx.
DATA: ex_changed TYPE mmpur_bool.
wa_data = im_item->get_data( ).
IF wa_data-zzifrs_16_relevant = 'N' AND wa_data-zzfixed_asset = 'N'.
wa_data-knttp = 'K'. "Account Assignment Category
ELSE.
wa_data-knttp = 2.
ENDIF.
IF wa_data-bsart = 'NB'.
wa_data-pstyp = 1. "Item Category (1 = B limit)
ENDIF.
IF wa_data-bsart = 'YNB' AND wa_data-konnr IS NOT INITIAL.
SELECT SINGLE ebeln, werks_i, matkl_i, meins_i, netpr_i, peinh_i, konnr, waers, ebelp_i
FROM wb2_v_ekko_ekpo2
INTO @l_w_ekko_ekpo
WHERE ebeln EQ @wa_data-konnr AND ebelp_i = @wa_data-ktpnr.
wa_data-werks = l_w_ekko_ekpo-werks_i.
wa_data-matkl = l_w_ekko_ekpo-matkl_i.
wa_data-meins = l_w_ekko_ekpo-meins_i.
wa_data-konnr = l_w_ekko_ekpo-ebeln.
wa_data-waers = l_w_ekko_ekpo-waers.
wa_data-ktpnr = l_w_ekko_ekpo-ebelp_i.
IF l_w_ekko_ekpo-peinh_i = 1.
wa_data-peinh = l_w_ekko_ekpo-peinh_i.
wa_data-preis = l_w_ekko_ekpo-netpr_i.
ELSEIF l_w_ekko_ekpo-peinh_i > 1.
wa_data-preis = l_w_ekko_ekpo-netpr_i / l_w_ekko_ekpo-peinh_i.
wa_data-peinh = 1.
ENDIF.
ENDIF.
CALL METHOD im_item->set_data
EXPORTING
im_data = wa_data. " Item Data
ex_changed = 'X'.
CALL METHOD im_item->set_datax
EXPORTING
im_datax = wa_datax. " Change Parameter
ENDMETHOD.
output:
Comments
Post a Comment