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+
函数组名)
SAPLZ_FG2,该程序名会
在分配屏幕号的时候使用。
1.3 SE80定义函数组
se80->function group->Z_FG2,我们会看到已有了两个屏幕和两个include.如图1.3-1:
图1.3-1
双击屏幕0001,添加三个Module,编辑如图1.3-2:
图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
*&-------------------------------------------------------------------
* 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
屏幕设计完后保存并激活函数组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已经存在,所以点击更改,如果不存在,点击创建。
图1.5-2
图
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操作:
图1.6-2
1.7 分配屏幕到主数据的视图中-实现
在下图中输入前面创建的函数组对应的程序名(SAPLZ_FG2)及屏幕编号(0001),如图
1.7-1,之后点保存,保存时如果需要就创建请求,直至保存成成功:
图1.7-1
1.8 MM03测试效果
如图1.8-1:
图1.8-1
添加成功。
1.9 MM02测试效果
如图1.9-1(修改),图1.9-2(修改结果):
图1.9-1
图1.9-2
计划主管工作职责1工作向厂长负责负责编制或审批每日生产计划表跟进协调各工序生产接口次序与物料交接等生产计划工作2负责按客户订单的交…
体系管理制度汇编河南亿龙机械设备有限公司生产计划与物料控制PMC体系文件编制审核核准批准时间实施时间河南亿龙机械设备有限公司编制体…
20xx年XXXXX交通安全工作总结XXXX小学为认真落实《北京市道路交通安全防范责任制度管理办法》,根据市区交通安委会的工作部署…
一、定义应用1、点M与点F(4,0)的距离比它到直线l:x+5=0的距离小1,求点M的轨迹方程2、动点P到y轴距离比它到M(2,0…
(一)加强学习,提高党员的思想觉悟和知识水平继续组织党员学习毛泽东思想、邓小平理论、马列主义和《三个代表》重要思想以及十八大会议纲…
西冶川林场20xx年前半年森林管护工作总结天然林保护工程是坚持科学发展的固本工程,森林资源是立场之本,生存之基。森林管护工作是我们…
环境教育是一项基本国策,也是学校教育的一项重要内容。我们将认真贯彻、落实《全国环境宣传教育行为纲要》和《中小学环境教育实施指南》,…