ABAP:VA02销售订单保存前增强

VA02销售订单保存前增强:

SE38:MV45AFZZ

复制代码
ENHANCEMENT 2  ZCD_SO_SAVE_CHECK.    "active version
***** ADD BY ZJ 20221026 START 检查非源头订单禁止修改
  DATA:ls_zsdt031 TYPE zsdt031,
       lv_zrfcid TYPE zrfcid,
       lt_zsdt008 TYPE TABLE OF zsdt008,
       ls_zsdt008 TYPE zsdt008.
  IF ( sy-tcode = 'VA02' OR sy-tcode = 'VA03' ).
    SELECT SINGLE * INTO ls_zsdt008 FROM zsdt008 WHERE objkey = vbak-vbeln
                                                          AND objtype = 'SO'.

    IF sy-subrc = 0.

      SELECT SINGLE objkey INTO @DATA(lv_objkey) FROM zsdt008 WHERE zrfcid = @ls_zsdt008-zrfcid
                                                                AND canum = '0010'.
      IF sy-subrc = 0.
        SELECT SINGLE bukrs INTO @DATA(lv_bukrs) FROM ekko WHERE ebeln = @lv_objkey.
        IF sy-subrc = 0.
          SELECT SINGLE zbs INTO @DATA(lv_zbs) FROM zsdt031 WHERE bukrs = @lv_bukrs
                                                              AND objtype = 'PO'.
          IF lv_zbs = 'Y'.
             IF ls_zsdt008-canum > 10.
               MESSAGE '非源头订单不能够更改' TYPE 'E'.
             ENDIF.
          ENDIF.
        ENDIF.
      ENDIF.
    ENDIF.

*    SELECT SINGLE * FROM zsdt031 INTO ls_zsdt031 WHERE bukrs = vbak-vkorg
*                                                 AND objtype = 'SO'.
*    IF ls_zsdt031-zbs = 'Y'.
*      SELECT SINGLE * INTO ls_zsdt008 FROM zsdt008 WHERE objkey = vbak-vbeln
*                                                   AND objtype = 'SO'.
*      IF sy-subrc = 0.
*        IF ls_zsdt008-canum > 10.
*          MESSAGE '非源头订单不能够更改' TYPE 'E'.
*        ENDIF.
*      ENDIF.
*    ENDIF.
  ENDIF.

***** ADD BY ZJ 20221026 END 检查非源头订单禁止修改
ENDENHANCEMENT.
复制代码

 

posted @   阿胖的阿多  阅读(506)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 记一次.NET内存居高不下排查解决与启示
点击右上角即可分享
微信分享提示