有个需求是,参考PR创建PO的时候,根据PR type 自动调整PO的type。
增强点:
method
测试代码:
FUNCTION zfm_chang_po_type_enhance.
*"----------------------------------------------------------------------
*"*"Local Interface:
*" IMPORTING
*" REFERENCE(IM_HEADER) TYPE REF TO IF_PURCHASE_ORDER_MM
*"----------------------------------------------------------------------
DATA: ls_header TYPE mepoheader.
DATA: lt_item_object TYPE purchase_order_items.
DATA: ls_item_object LIKE LINE OF lt_item_object.
DATA: wa_item TYPE mepoitem.
"get po header
CALL METHOD im_header->get_data
RECEIVING
re_data = ls_header.
"get po item objects
CALL METHOD im_header->get_items
RECEIVING
re_items = lt_item_object.
"get first line just for test
READ TABLE lt_item_object INTO ls_item_object INDEX 1.
CHECK sy-subrc = 0.
"get po item data
CALL METHOD ls_item_object-item->get_data
RECEIVING
re_data = wa_item.
DATA: ls_eban TYPE eban.
"check PR type
* SELECT SINGLE bsart spras INTO ( lv_bsart,lv_spras )
SELECT SINGLE * INTO ls_eban
FROM eban WHERE banfn = wa_item-banfn.
CHECK sy-subrc = 0.
IF ls_eban-bsart = 'ZPR'.
ls_header-bsart = 'ZPO'.
CALL METHOD im_header->set_data
EXPORTING
im_data = ls_header.
ENDIF.
ENDFUNCTION.
欢迎关注订阅号:SAP学习记录 (SAPlearning )