SAP 计划独立需求屏幕增强(MD61/MD62/MD63)

需求:在计划独立需求界面新增一列自定义字段

效果如下:

MD63:显示:(注:客户字段在显示界面不可以编辑)

MD61:创建/MD62:修改(注:创建和修改的时候客户字段可编辑)

MD61创建界面:

MD62修改界面:

 增强表结构:

  

 代码实现:

程序:SAPLM60E

屏幕:0202

 设置布局,添加一列客户

添加增强字段的校验逻辑

FIELD PBPT-ZKUNNR MODULE CHECK_ZKUNNR ON REQUEST..

 

 

 对增强字段进行校验处理

*----------------------------------------------------------------------*
***INCLUDE LM60EI01.
*----------------------------------------------------------------------*

*{   INSERT         S4DK900144                                        1
*&---------------------------------------------------------------------*
*&      Module  CHECK_ZKUNNR  INPUT
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
MODULE check_zkunnr INPUT.
  DATA: ls_kna1 TYPE kna1,
        lt_pbim TYPE TABLE OF pbim,
        ls_pbim TYPE pbim.
  CLEAR: ls_kna1,
         lt_pbim,
         ls_pbim.

  "检查客户是否存在
  SELECT SINGLE * INTO ls_kna1
    FROM kna1
    WHERE kunnr = pbpt-zkunnr.
  IF ls_kna1 IS INITIAL.
    MESSAGE '客户不存在,请检查。' TYPE 'E'.
  ELSE. "检查客户是否打上冻结标识
    IF ls_kna1-aufsd IS NOT INITIAL.
      MESSAGE '客户被打上冻结标识,请检查。' TYPE 'E'.
    ENDIF.
  ENDIF.

*  检查物料+工厂+版本条件下,客户不能重复
  SELECT * INTO TABLE lt_pbim
    FROM pbim
    WHERE matnr = pbpt-matnr
      AND werks = pbpt-werks
      AND versb = pbpt-versb
      AND vervs = 'X'.
  IF sy-subrc = 0.
    READ TABLE lt_pbim INTO ls_pbim WITH KEY zkunnr = pbpt-zkunnr.
    IF sy-subrc = 0.
      MESSAGE '客户重复,请检查。' TYPE 'E'.
    ENDIF.
  ENDIF.
ENDMODULE.
*}   INSERT

 增强的信息更新到以下表PBIM中: 

到此,所有的都完成了

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值