首页 > 解决方案 > 拒绝原因的用户退出 VA01

问题描述

我的要求是确保只有主商品和免费商品一起选择时能够清除拒绝原因,如果不是主要商品,将使用免费商品的拒绝原因拒绝。问题是 SAP 默认程序总是覆盖我所做的任何更改。我在FORM USEREXIT_MOVE_FIELD_TO_VBAK下找到了这个用户出口MV45AFZZ ,但它不起作用。请你帮忙。

我的代码

FORM USEREXIT_MOVE_FIELD_TO_VBAK.
ENHANCEMENT 1  ZFREEBIES_REJ_CHECK_ON_CHANGE.    "active version

   DATA:    lv_uepos TYPE vbap-uepos,
            lv_abgru TYPE vbap-abgru,
            lw_xvbap TYPE vbapvb.

   LOOP at xvbap WHERE pstyv = 'TANN'.
     READ TABLE xvbap INTO lw_xvbap WITH KEY posnr = xvbap-uepos.
     IF sy-subrc EQ 0.
       xvbap-updkz = 'U'.
       CLEAR xvbap-grpkz.
       lv_uepos = xvbap-uepos.
       IF ( lw_xvbap-abgru ne xvbap-abgru AND xvbap-abgru NE '' ).
        CASE xvbap-vbeln.
        WHEN ''.
           MODIFY xvbap TRANSPORTING abgru grpkz WHERE posnr = xvbap-posnr.
           MODIFY xvbap TRANSPORTING abgru grpkz WHERE posnr = lv_uepos.
        WHEN OTHERS.
           MODIFY xvbap TRANSPORTING abgru updkz grpkz WHERE posnr = xvbap-posnr.
           MODIFY xvbap TRANSPORTING abgru updkz grpkz WHERE posnr = lv_uepos.
       ENDCASE.
       ENDIF.
     ENDIF.
     ENDLOOP.


ENDENHANCEMENT.
ENDFORM.

数字

Initial Value :
main item  = Rejected
free goods = Rejected.

User Change:
Main Item  = Cleared.
Free goods = Rejected.

Sap Result:
Main Item = Cleared
Free Goods = Cleared.

Expected Result :
Main Item = Rejected
Free Goods = Rejected

标签: abapsap-erp

解决方案


推荐阅读