CO02可用性检查增强

需求背景

缺料情况下,把需求数量也强制改到有库存那一行(承诺数量>0的行),非常BT的一个需求,风险很高。

1.增强效果

2.增强+修改标准程序

主要增强和修改标准函数:CO_ZA_AVAILABILITY_CHECK

2.1隐式增强

在函数开头判断是否走增强,标记LV_ATP_ENH。

FUNCTION co_za_availability_check.
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""$"$\SE:(1) Funktionsbaustein CO_ZA_AVAILABILITY_CHECK, Anfang                                                                                                A
*$*$-Start: (1)---------------------------------------------------------------------------------$*$*
ENHANCEMENT 1  ZCO02_ATP_ENH01.    "active version
* add by Jeff 20260821 begin
* 非函数:ZFM_CHANGE_PROD_COMP的BDC调用且事务码为CO02才能激活ATP的增强
  DATA lv_bdc_fg TYPE char1.
  DATA lv_atp_enh TYPE abap_bool.   "是否走ATP增强逻辑

  IMPORT lv_bdc_fg FROM MEMORY ID 'ZBDC'.         "export地方在函数:ZFM_CHANGE_PROD_COMP call BDC之前

  IF lv_bdc_fg IS INITIAL AND sy-tcode = 'CO02'.
    lv_atp_enh = abap_true.
  ENDIF.
* add by Jeff 20260821 end
ENDENHANCEMENT.

2.2 修改标准程序

主要思路是解除mdvax-xfehl 缺料标识必须为空的限制

避免影响ATP检查的ALV输出结果

所以增强标记lv_atp_enh = abap_true的分支

只清空

                      CLEAR: resbve_tab-bdmng, resbve_tab-erfmg,
                             resbve_tab-ewahr, resbve_tab-roanz.

mdvax相关的信息保留

修改CLEAR的处理目的是不能影响ATP的ALV输出结果

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值