SM30 表格维护生成器
1)SE11创建自建表,结构如下:
2) 创建表维护
3) 针对上面创建的函数组ZMM_MAT_DESC,做以下增强处理
添加的Module 代码如下:
module mod_customize input.
"自动带出值
zmm_mat_desc-lname = sy-uname.
zmm_mat_desc-ldate = sy-datum.
zmm_mat_desc-ltime = sy-uzeit.
endmodule. " MOD_CUSTOMIZE INPUT
并修改100屏幕,把对应的三个字段设置为不可输入:
4) 创建程序,定义好选择界面,并通过标准函数:VIEW_MAINTENANCE_CALL 调用上面创建的SM30表维护
report zmm_mat_desc no standard page heading.
data: gs_zmm_mat_desc like zmm_mat_desc,
gt_zmm_mat_desc like table of gs_zmm_mat_desc,
gs_vimsellist like vimsellist,
gt_vimsellist like table of gs_vimsellist.
tables zmm_mat_desc.
select-options:
s_matnr for zmm_mat_desc-matnr,
s_maktx for zmm_mat_desc-maktx no intervals,
s_lname for zmm_mat_desc-lname no intervals,
s_ldate for zmm_mat_desc-ldate,
s_ltime for zmm_mat_desc-ltime.
select * into table gt_zmm_mat_desc
from zmm_mat_desc
where matnr in s_matnr
and maktx in s_maktx
and lname in s_lname
and ltime in s_ltime.
loop at gt_zmm_mat_desc into gs_zmm_mat_desc.
gs_vimsellist-viewfield = 'MATNR'.
gs_vimsellist-operator = 'EQ'.
gs_vimsellist-value = gs_zmm_mat_desc-matnr.
gs_vimsellist-and_or = 'OR'.
append gs_vimsellist to gt_vimsellist.
endloop.
call function 'VIEW_MAINTENANCE_CALL'
exporting
action = 'U'
view_name = 'ZMM_MAT_DESC'
tables
dba_sellist = gt_vimsellist
exceptions
client_reference = 1
foreign_lock = 2
invalid_action = 3
no_clientindependent_auth = 4
no_database_function = 5
no_editor_function = 6
no_show_auth = 7
no_tvdir_entry = 8
no_upd_auth = 9
only_show_allowed = 10
system_failure = 11
unknown_field_in_dba_sellist = 12
view_not_found = 13
maintenance_prohibited = 14
others = 15.
if sy-subrc <> 0.
message id sy-msgid type sy-msgty number sy-msgno
with sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
endif
5) 运行程序,效果如下
但是新增时报错:
这是因为指定了选择条件后,添加条目时还要去验证物料是否满足选择条件,显然不符合逻辑;
通过调试发现,需要在上面的Module里面清空掉选择条件限制的标识位,如下:
module mod_customize input.
"清空条件选择的标识位
clear x_header-selection.
"自动带出值
zmm_mat_desc-lname = sy-uname.
zmm_mat_desc-ldate = sy-datum.
zmm_mat_desc-ltime = sy-uzeit.
endmodule. " MOD_CUSTOMIZE INPUT
然后再做新增时,就可以通过了:
SM30 表格维护生成器的更多相关文章
- abap 开发之创建表维护生成器
在sap开发中有时需要对一些自建表维护数据,但又不想写程序,怎么办呢??这个时候我们可以直接生成个表维护生成器,为其定义一个事物码就ok了.以下是表格维护生成器的生成步骤. 首先我们需要先定义表.输入 ...
- 【ABAP系列】SAP ABAP 为表维护生成器创建事务代码
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[ABAP系列]SAP ABAP 为表维护生成器 ...
- sm30表维护做排序
好吧,之前有人问过,因为代码太少就一直没发...今天给出来吧 众所周知,表维护其实就是个TC,只是表维护是统一的,没有使用通用名内表名什么的,这个就不多说了,来重点: TC的一般排序可以放在:1,PB ...
- SM30维护视图添加按钮
转自http://blog.csdn.net/tsj19881202/article/details/7517232 遇到某需求,要求维护sm30的视图时,能加上排序按钮. 基本参考: http:// ...
- SM30维护视图创建【转】
在SAP中,经常需要自定义数据库表.而且可能需要人工维护数据库表中的数据,可以通过SM30进行维护数据:但是SM30事务的权限太大,不适宜将SM30直接分配:因此,可以通过给维护表分配事 ...
- SAP技术相关Tcode
ABAP的常用tcode 开发----------------------------------------------- SE51 屏幕制作 SE91 MESSAGE OBJECT SE80 ...
- SE11
自省数据及表存储 2014年4月6日 21:37 类似JAVA反射的特性 SAP提供自省数据的机制 这样可以保证程序的灵活性和动态性 1.使用OO中的cl_abap_typed ...
- ABAP常用事务码
开发----------------------------------------------- SE51 屏幕制作 SE91 MESSAGE OBJECT SE80 对象浏览器(可以建开发类 ...
- 调用SM30数据表维护的函数
相关文章:http://www.cnblogs.com/caizjian/p/3248499.html 1.se11进去新建一个数据表 2.se55进去生产表维护 3.sm30进去维护数据表 4.se ...
随机推荐
- Python——os.path.dirname(__file__) 与 os.path.join(str,str)
Python os.path.dirname(__file__) Python os.path.join(str,str) (1).当"print os.path.dirname(__f ...
- 【BIEE】08_修改浏览器标题栏显示内容
打开分析,我们可以看到标题栏中显示的BIEE默认的,现在想要把这个修改为自定义的 打开文件路径: D:\obiee\Oracle_BI1\bifoundation\web\msgdb\l_zh-CN\ ...
- ios侧滑返回:完美解决 interactivePopGestureRecognizer 卡住的问题
interactivePopGestureRecognizer是iOS7推出的解决VeiwController滑动后退的新功能,虽然很实用,但是坑也很多啊(比如在rootViewcontroller下 ...
- 企业级分布式存储应用与实战MogileFS、FastDFS
项目实战9—企业级分布式存储应用与实战MogileFS.FastDFS 目录 实战一:企业级分布式存储应用与实战 mogilefs 实现 原理 1.环境准备 2.下载安装,每个机器都一样 3.数据 ...
- 转python调用Go代码
Go 1.5发布了,其中包含了一个特性:可以编译生成动态链接库,经试验,生成的.so文件可以被python加载并调用.下面举个例子: 先写一个go文件main.go: package main imp ...
- Windows 清除系统垃圾文件
@echo off echo 正在清除系统垃圾文件,请稍等...... del /f /s /q %systemdrive%\*.tmp del /f /s /q %systemdrive%\*._m ...
- CDN与缓存的归纳理解
缓存是什么 缓存是一个到处都存在的用空间换时间的例子.通过使用多余的空间,我们能够获取更快的速度. 我们通常意义上说的缓存主要包含两部分.第一个是用户浏览器端的缓存,第二个是服务器端为了提高访问速度而 ...
- Windows 10 优化
---恢复内容开始--- 0x00 使开始菜单,任务栏,和操作中心透明 --关闭 右下角开始菜单,选择设置,打开个性化菜单,找到颜色一栏.向下滑至最低端,使开始菜单,任务栏,和操作中心透明选项关闭 0 ...
- windows下忘记mysql超级管理员rootpassword的解决的方法
今天帮一个朋友找回了MYSQL的超级管理员ROOTpassword.開始输入命令的时候少打了个"点"害的折腾了几个小时.最终攻克了,写个教程,方便以后使用! 假设你是server是 ...
- myeclipse配置问题
一,配置相关 1,myeclipse配置jdk Window --> Preferences --> Java --> Installed JREs 2.myeclipse配置tom ...