关闭

MM01创建物料主数据屏幕增强

274人阅读 评论(0) 收藏 举报
分类:

 

业务场景:MM01/MM02/MM03操作物料主数据时,在基本数据1视图中新增两个字段:旧物料号、基本单位。

1、创建增强2个字段所需的子屏幕
OMT3C(spro->Logistics-General -> Material Master -> Configuring the material master and execute ‘Create Program for Customized subscreen)
MM01_exit 1.jpg

2、新建函数组,最好命名ZMGD1,表示这是copy标准程序MGD1用来增强的,这里是测试案例命名无所谓了。
MM01_exit 2.jpg



3、SE80打开函数组YMM_FG,画2组元素zmara_old-bismt,zmara_old-meins,参考数据字典打勾
MM01_exit 3.jpg

4、0001屏幕程序流

PROCESS BEFORE OUTPUT.

*                      Verarbeitung vor der Ausgabe

  MODULE disable_fields.

  MODULE get_data.



PROCESS AFTER INPUT.

*                      Verarbeitung nach der Eingabe

  MODULE assign_data.
*----------------------------------------------------------------------*

***INCLUDE LYMM_FGO01.

*----------------------------------------------------------------------*

*&---------------------------------------------------------------------*

*&      Module  DISABLE_FIELDS  OUTPUT

*&---------------------------------------------------------------------*

*       text

*----------------------------------------------------------------------*

MODULE disable_fields OUTPUT.

  IF sy-tcode = 'MM03'.

    LOOP AT SCREEN.

      screen-input = '0'.

      MODIFY SCREEN .

    ENDLOOP.

  ENDIF.

ENDMODULE.                 " DISABLE_FIELDS  OUTPUT

*&---------------------------------------------------------------------*

*&      Module  GET_DATA  OUTPUT

*&---------------------------------------------------------------------*

*       text

*----------------------------------------------------------------------*

MODULE get_data OUTPUT.

  IF sy-tcode = 'MM03' OR sy-tcode = 'MM02'.

    GET PARAMETER ID w_mat FIELD w_matnr.

    SELECT SINGLE bismt meins

      INTO (zmara_old-bismt,zmara_old-meins)

      FROM zmara_old

      WHERE matnr = w_matnr.

  ENDIF.

ENDMODULE.                 " GET_DATA  OUTPUT
<span style="font-family:Arial;BACKGROUND-COLOR: #ffffff"></span>
*----------------------------------------------------------------------*

***INCLUDE LYMM_FGI01.

*----------------------------------------------------------------------*

*&---------------------------------------------------------------------*

*&      Module  ASSIGN_DATA  INPUT

*&---------------------------------------------------------------------*

*       text

*----------------------------------------------------------------------*

MODULE assign_data INPUT.

  EXPORT zmara_old TO MEMORY ID 'zmara_old'.

ENDMODULE.                 " ASSIGN_DATA  INPUT

LYMM_FGTOP中定义全局变量
FUNCTION-POOL ymm_fg

                   MESSAGE-ID m3.



INCLUDE mmmgtrbb.

INCLUDE mmmgbbau.

* Retail-Spezifische Deklarationen

INCLUDE mmmwtrbb.

INCLUDE mmmwbbau.

*---------------------------------

INCLUDE wstr_definition. "Holds BADI global definition



DATA:w_matnr TYPE mara-matnr.

DATA:w_mat TYPE tpara-paramid.

TABLES:zmara_old.

5、后台将自建的屏幕维护到标准MM01屏幕中
OMT3B(spro -> Logistics-General -> Material Master -> Configuring the material master and execute  ‘Define Structure of Data Screens for Each Screen Sequence’)
MM01_exit 4.jpg


选中右侧一条数据,双击左侧data screen
MM01_exit 5.jpg


选中右侧Basic Data 1数据,双击左侧Subscreens
MM01_exit 6.jpg


选择21->07->08,将刚才新建的函数池SAPLYMM_FG维护到program中,保存。为什么选择21->07->08?
6、找到mm01保存的增强出口se37:EXIT_SAPLMGMU_001
双击INCLUDE ZXMG0U02.新建include

TABLES:zmara_old.

IF sy-ucomm = 'BU'.

  IMPORT zmara_old FROM MEMORY ID 'ZMARA_OLD'.

  MOVE cmara-matnr TO zmara_old-matnr.

  MODIFY zmara_old FROM zmara_old.

ENDIF.

7、MM01测试效果
MM01_exit 7.jpg





0
0

猜你在找
【直播】机器学习&数据挖掘7周实训--韦玮
【套餐】系统集成项目管理工程师顺利通关--徐朋
【直播】3小时掌握Docker最佳实战-徐西宁
【套餐】机器学习系列套餐(算法+实战)--唐宇迪
【直播】计算机视觉原理及实战--屈教授
【套餐】微信订阅号+服务号Java版 v2.0--翟东平
【直播】机器学习之矩阵--黄博士
【套餐】微信订阅号+服务号Java版 v2.0--翟东平
【直播】机器学习之凸优化--马博士
【套餐】Javascript 设计模式实战--曾亮
查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:449次
    • 积分:24
    • 等级:
    • 排名:千里之外
    • 原创:2篇
    • 转载:1篇
    • 译文:0篇
    • 评论:0条
    文章分类
    文章存档