BADI 修改采购订单的shipping point示例
2012-09-05 14:13
253 查看
BADI 修改采购订单的shipping point示例
本文描述如何使用BADI enhancement来修改采购订单的shipping point值。待实现的BADI class:ME_PROCESS_PO_CUST (Enhancements for Processing Enjoy Purchase Order: Customer)
1. 执行se19实现BAD方法:IIF_EX_ME_PROCESS_PO_CUST~PROCESS_HEADER
2. 在方法内输入如下代码:
method if_ex_me_process_po_cust~process_header .
data : header_data type mepoheader ,
po_data type mepoitem,
my_ekpv type ekpv,
items type purchase_order_items,
item_obj type purchase_order_item.
data oldvstel type ekpv-vstel.
header_data = im_header->get_data( ).
items = im_header->get_items( ) .
if header_data-bsart = 'UB'. "stock transport order
* first,save old value of shipping point b+.
if not items is initial .
loop at items into item_obj .
my_ekpv = item_obj-item->get_shipping_data( ) .
if oldvalue is initial . "statics var
ldvalue = my_ekpv-vstel .
endif.
endloop.
* second, if collect number is 'SAMPLE' , set value 8201 to shipping
* point
if header_data-submi = 'SAMPLE' and
header_data-reswk = supplyplant .
my_ekpv = item_obj-item->get_shipping_data( ) .
my_ekpv-vstel = shippingpoint.
item_obj-item->set_shipping_data( im_ekpv = my_ekpv ).
endif.
* third, if collect number is not 'SAMPLE' ,recover shipping point.
if header_data-submi <> 'SAMPLE' or
header_data-reswk <> supplyplant .
my_ekpv = item_obj-item->get_shipping_data( ) .
my_ekpv-vstel = oldvalue.
item_obj-item->set_shipping_data( im_ekpv = my_ekpv ).
endif.
endif.
endif.
* ENDIF.
endmethod.
相关文章推荐
- SpringMVC(22):使用springmvc+spring+jdbc 优化订单管理系统的示例(ID修改供应商明细的功能实现)
- 根据MRP建议对采购订单需求日期的建议修改采购订单需求日期 (续)
- 采购订单收货后不能修改价格的增强
- SAP用户增强总结-采购订单建立增加客户数据增强示例
- 撤销审批有收货的采购订单,并修改采购订单
- 根据MRP建议对采购订单需求日期的建议修改采购订单需求日期
- magento修改订单状态、添加订单备注代码示例
- 采购订单建立增加客户数据增强示例
- 采购订单的 BADI增强点
- SAP 采购订单打印之后不能取消审核问题的解决(修改配置)
- 采购订单检查/保存BADI使用
- 修改金蝶采购订单的默认采购方式
- 审核后采购订单修改单据明细补充
- CRM_ORDER_MAINTAIN 修改订单简单示例
- 采购订单价格修改-CONDBI
- MM采购订单的增强user-exit:MM06E005(示例程序是下PO做成本MR21)
- SAP 销售订单中采购标识无法修改
- SAP用户增强总结-采购订单建立增加客户数据增强示例
- 采购订单的批量修改
- K3后台修改采购模块(采购订单、收料送检单、外购入库单)供应商信息