在SAP中使用标准表维护SM30说明 |
您所在的位置:网站首页 › sapa翻译 › 在SAP中使用标准表维护SM30说明 |
标准的表维护生成器,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 办公设备维修网 版权所有 豫ICP备15022753号-3 |