在SAP中使用标准表维护SM30说明 您所在的位置:网站首页 sapa翻译 在SAP中使用标准表维护SM30说明

在SAP中使用标准表维护SM30说明

2023-07-15 11:24| 来源: 网络整理| 查看: 265

标准的表维护生成器,SM30的详细说明:

一、SE11中编辑表的前提条件:

1、注意表的主键,如果没有主键,SM30中无法出现正常的界面。

2、表如果不用数据元素,表的字段文本不会显示,只会显示“+”。

3、表的编辑属性应该选X。

 注意:se11开启编辑模式,才能对“表维护生成器”做编辑。

二、SE11中生成“表维护生成器”视图:

SE11中输入自建表,选择菜单“实用程序”中的表维护生成器,

1、权限对象设置为:&NC&,表示最大权限。

2、函数组填一个,界面自动会创建。

3、开发包选一个。

4、用一步法,点“查找屏幕号”界面自动填充一个屏幕。

5、“记录历程”一定要选“不,或用户,记录历程”

三、SM30中编辑自建表数据:

在SM30中输入自建表名

 就可以用标准的编辑界面维护自己表的数据了

四、把表维护编辑器转为事务代码:

有时候,这个功能,我们还需要下放给用户,我们不能把SM30直接交给,因为SM30权限比较大,有了SM30,用户可以修改全部的自定义表,所以不能把SM30给用户。那有什么好的办法把这么好的功能给用户呢?

新建一个程序中调用下面函数,就可以调用“表的维护界面”了,再把程序和事务赋权给用户,这样用户就可以使用SM30里的标准表维护界面了:

CALL FUNCTION 'VIEW_MAINTENANCE_CALL'     EXPORTING       action                       = 'U' *     CORR_NUMBER                  = '          ' *     GENERATE_MAINT_TOOL_IF_MISSING       = ' ' *     SHOW_SELECTION_POPUP         = ' '       view_name                    = l_tablename.  

五、对维护界面字段进行控制:

1、比如有个需求A,新建行数据要自动带出UID和用户名、日期、时间:

在SM30中增加一个事件

有很多事件可以选,这里选05:

2、比如有个需求B,用户修改了多行,我们要对多行数据保存到数据库前检查:

这里需要先得到一张界面的全局内表:

 表数据在EXTRACT变量中,但是是全部字段合并为一行存储,需要转换一下:

FORM FRM_EVENT01 . DATA:lt_table TYPE TABLE OF ZTSD0026C. LOOP AT EXTRACT. APPEND TO lt_table. ENDLOOP. ENDFORM.

OK,上面的代码,我们得到了界面的表,放到 lt_table里面。

剩下的就是按自己的规则检查了,最后来一个比较复杂的规则例子,ZTSD0026C表:

*----------------------------------------------------------------------* ***INCLUDE LZTSD0026CF01. *----------------------------------------------------------------------* *&---------------------------------------------------------------------* *& Form FRM_EVENT01 *&---------------------------------------------------------------------* *& text *&---------------------------------------------------------------------* *& --> p1 text *&


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有