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.

BADI 修改采购订单的shipping point示例相关推荐

  1. oracle 修改po税api_[zz]Oracle EBS API: 采购订单承诺日期更改示例

    Oracle EBS API: 采购订单承诺日期更改示例(PO promise date updated with API ) 本示例中, 采用PO模块的API, 实现订单行的送货承诺日期更改.  对 ...

  2. 根据MRP建议对采购订单需求日期的建议修改采购订单需求日期 (续)

    根据MRP建议对采购订单需求日期进行系统更改,但是出现了一个问题:更改需求日期的时候发现采购单价被改了. 出现单价被自动更改有以下前提条件: 1.此采购单价是由来源单据带出的,比方说报价单: 2.当采 ...

  3. SAP 批量修改采购订单

    现在有一个需求,我们需要冻结一批采购订单,但是由于批量冻结的后果无法预知,我们打算用一个折中的办法. 利用采购订单行项目中的"最近收货日期"字段,下面我们先看一下它的解释. 最近可 ...

  4. SAPERP软件如何修改采购订单信息记录中的净价?

    作者:Chisting 声明:本文章仅用于SAP软件的应用与学习,不代表SAP公司.(注:文中所示截图来源SAP软件,相应著作权归SAP所有.) 在SAP系统中如果采购信息记录中的净价维护错误,是可以 ...

  5. 采购订单检查/保存BADI使用

    BADI:ME_PROCESS_PO_CUST 需求: 2.1 根据采购申请是否经过修改或采购申请的类型,确定订单为一级审批还是二级审批.一级 审批订单汇总号为80,二级审批订单汇总号为90.系统默认 ...

  6. SAP已经审批的采购订单可修改

    业务在系统中进行了对采购订单审批设置为审批后不可再修改单据, 我们修改采购订单报06(683)消息:采购凭证有批准标识& (修改是不可能的) 有时候一些场景需要跳过系统的审批后不可修改的检查 ...

  7. SAP创建采购订单流程

    文章目录 1.生产订单创建 2. MRP跑出需求 3.创建采购订单. 4. 修改采购订单 4.1 事务代码: ME22N (单个采购订单,) 4.2事务代码: 事务代码: MEMASSPO (多个采购 ...

  8. sap mm采购订单交货已完成标识详解

    1.交货已完成标识:这个字段作用是用于控制采购订单中的项目是否还有未清项的,它可以由系统在达成交货完成条件后自动设定,也可以在未达成交货完成条件时,通过手动设定,它的主要作用体现在MRP计算逻辑中 举 ...

  9. SAP 创建启用了ARM功能的采购订单,报错 -Shipping processing is not selected to supplier 100057 in purchase org. 0002

    SAP 创建启用了ARM功能的采购订单,报错 -Shipping processing is not selected to supplier 100057 in purchase org. 0002 ...

最新文章

  1. 转挣扎的菜鸟 - 当OD不能装载也不能附加程序时
  2. Kali Linux软件更新日报20190622
  3. 智能合约重构社会契约 (4)预言机基础说明
  4. AngularJS:在Windows上安装Yeoman
  5. 跨站请求伪造(CSRF/XSRF)
  6. 微信小程序入门的一些建议,替大家踩坑
  7. Map与WeakMap
  8. mysql 驱动说明_mysql_jdbc连接说明
  9. 【java】窗口和流的应用
  10. Android(第三方库汇总)
  11. LayaAir UI 组件 # CheckBox 复选框
  12. cam350 不能打开光绘文件_导出的光绘文件导入cam350为何出现这个问题?
  13. 美国NIST《可解释的人工智能的四个原则》(全文翻译)
  14. 工商业与信息业的关系
  15. dell笔记本外接显示器_笔记本连接显示器怎么设置【图文教程】
  16. 古典音乐入门的常见问题
  17. 1905 统计子岛屿
  18. linux下的go富集分析,GO富集分析
  19. 刻意学习:持续行动让你人生逆袭
  20. 一招恢复删除的微信好友

热门文章

  1. 使用ASIFormDataRequest打印参数和给项目添加测试账号
  2. Ubuntu LAMP
  3. 如何完全自定义NavigationBar
  4. multi-statement not allow解决
  5. 详解使用fastboot为Android刷入原厂镜像
  6. Oracle 基础系列之1.1 oracle的安装
  7. mybatis高级(3)_延迟加载_深度延迟_一级缓存_二级缓存
  8. Java设计模式(学习整理)---单例模式
  9. 使用Android SDK Manager下载sdk时总是出现中断异常的解决办法。
  10. OD使用教程16 - 调试篇16