SAP增强-MM-物料主数据

1、物料主数据增强(MM01/MM02/MM03) 目的:SAP标准字段不够使用,利用屏幕增强增加字段,以便用户输入内容并保存至自定义表中。

1.1 SE11创建如下表(我们暂且称之谓ADD-ON表)

如图1.1-1:

图1.1-1 1.2 创建定制子屏幕的程序

Tcode:spro,后勤-常规->物料主数据->配置物料主记录->创建定制子屏幕的程序 进去之后填写一个新的函数组,如图1.2-1:

图1.2-1

保存后生成函数组Z_FG2,另外会生成程序(SAPL+

SAP增强MM物料主数据

函数组名)

SAP增强MM物料主数据

SAPLZ_FG2,该程序名会

在分配屏幕号的时候使用。

1.3 SE80定义函数组

se80->function group->Z_FG2,我们会看到已有了两个屏幕和两个include.如图1.3-1:

图1.3-1

双击屏幕0001,添加三个Module,编辑如图1.3-2:

SAP增强MM物料主数据

图1.3-2

module disable_field:通过判断TCODE,如果是MM03,则自定义字段为只读, module get_data:读取ADD-ON表中相应物料的数据,在自定义屏幕中显示出来。

module assign_data:将自定义屏幕中各字段的值传入内存ID中,以便保存时调用。各模块代码如下(新建这几个module时不用再创建新的include,放到LZ_FG2TOP中即可): *&------------------------------------------------------------------- *& Module DISABLE_FIELD OUTPUT

*&------------------------------------------------------------------- * text

*-------------------------------------------------------------------- MODULE DISABLE_FIELD OUTPUT.

IF SY-TCODE = 'MM03'.

LOOP AT SCREEN.

SCREEN-INPUT = '0'.

MODIFY SCREEN.

ENDLOOP.

ENDIF.

ENDMODULE. " DISABLE_FIELD OUTPUT

*&------------------------------------------------------------------- *& Module GET_DATA OUTPUT

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

SAP增强MM物料主数据

* text

*-------------------------------------------------------------------- MODULE GET_DATA OUTPUT.

TABLES:ZPARTAPPEND.

DATA: F1 LIKE ZPARTAPPEND-F1,

F2 LIKE ZPARTAPPEND-F2,

W_MATNR TYPE MATNR.

IF SY-TCODE = 'MM02' OR SY-TCODE = 'MM03'.

GET PARAMETER ID 'MAT' FIELD W_MATNR.

SELECT SINGLE * FROM ZPARTAPPEND WHERE MATNR = W_MATNR.

F1 = ZPARTAPPEND-F1.

F2 = ZPARTAPPEND-F2.

ENDIF.

ENDMODULE. " GET_DATA OUTPUT

*&------------------------------------------------------------------- *& Module ASSIGN_DATA INPUT

*&------------------------------------------------------------------- * text

*-------------------------------------------------------------------- MODULE ASSIGN_DATA INPUT.

ZPARTAPPEND-F1 = F1.

ZPARTAPPEND-F2 = F2.

EXPORT ZPARTAPPEND TO MEMORY ID 'ZPARTAPPEND'.

ENDMODULE. " ASSIGN_DATA INPUT

1.4 屏幕界面设计

在屏幕界面点'格式'进行屏幕定义,定义屏幕如图1.4-1,这里我们只用到部分字段。这两个可编辑框名称分别为:F1,F2。

图1.4-1

SAP增强MM物料主数据

屏幕设计完后保存并激活函数组Z_FG2。

1.5 CMOD创建增强

T-CODE:CMOD,使用出口MGA00001(在增强分配中配置)(物料主数据,不同的模块都有系统自带的出口,可参考SAP系统出口汇总)。如图1.5-1、图1.5-2、图1.5-3,进去后再双击 include ZXMG0U02.增强代码如图1.5-4:

图1.5-1

这里ZMM01已经存在,所以点击更改,如果不存在,点击创建。

SAP增强MM物料主数据

图1.5-2

SAP增强MM物料主数据

SAP增强MM物料主数据

SAP增强MM物料主数据

1.5-3

图1.5-4

如图1.5-4,添加处理代码,用以保存主数据修改后保存到自建表中。代码如下:

TABLES ZPARTAPPEND.

IF SY-UCOMM = 'BU' OR SY-UCOMM = 'YES'.

IMPORT ZPARTAPPEND FROM MEMORY ID 'ZPARTAPPEND'.

ZPARTAPPEND-MATNR = CMARA-MATNR.

MODIFY ZPARTAPPEND FROM ZPARTAPPEND.

ENDIF.

1.6 分配屏幕到主数据的视图中-路径

T-CODE:spro,后勤-常规->物料主数据->配置物料主记录->定义每个屏幕序列的数据屏幕的结构

再按图1.6-1,图1.6-2进行操作。

图1.6-1

本实例把新增的屏幕放到“基本数据2”视图中,所以参考图1.6-2操作:

SAP增强MM物料主数据

SAP增强MM物料主数据

图1.6-2

1.7 分配屏幕到主数据的视图中-实现

在下图中输入前面创建的函数组对应的程序名(SAPLZ_FG2)及屏幕编号(0001),如图

1.7-1,之后点保存,保存时如果需要就创建请求,直至保存成成功:

图1.7-1

1.8 MM03测试效果

如图1.8-1:

SAP增强MM物料主数据

图1.8-1

添加成功。

1.9 MM02测试效果

如图1.9-1(修改),图1.9-2(修改结果):

SAP增强MM物料主数据

图1.9-1

图1.9-2

SAP增强MM物料主数据

SAP增强MM物料主数据

 

第二篇:SAP 物料主数据 序列号

SAP物料主数据序列号

SAP物料主数据序列号

相关推荐