SE16和SE16N修改后台表数据方法

更多内容关注公众号:SAP Technical 

各位可以关注我的公众号:SAP Technical

SAP中直接修改表、视图的Tcode有SE16N和SM30。

 

一 . SE16N界面输入&SAP_EDIT

 

其中使用SE16N修改表需要先输入命令&SAP_EDIT,回车左下角显示激活SAP编辑功能后,就可以对相应的表进行新增、删除、修改的操作。

有时输入&SAP_EDIT后还是不能激活,是因为另有地方限制,执行程序RKSE16N_EDIT,选中激活编辑功能后,问题得以解决。

 

二 . SE38执行程序RKSE16N_EDIT

事务代码se38,执行程序RKSE16N_EDIT,选中激活编辑功能后,激活。


 

另外,在EHP5版本中,激活编辑功能是不被允许的,不过程序中是通过一个判断语句来限制的,可以通过将相关的判断值判断前加断点,手工修改赋予值之后,问题也迎刃而解。相关的判断语句可以通过查找关键字SE16N来寻找。

三 . SE16N进入DEBUG调试模式

se16n,进入需要修改的表中,调试激活编辑状态。

命令框中,输入/h,回车,2次调出调试器,或者或者输入&sap_edit,回车,系统提示修改状态激活。
在变量1中输入如下两个参数,并将其值都改为X ,GD-SAPEDIT、 GD-EDIT。如图:

此时,按F8,刷新,进入表中,进行修改相应的参数。

 

在SAP中,如果使用SE16N直接修改表中的记录,特别是add-on表记录的修改,SAP会记录下来。记录的内容分别放在两个表中:SE16N_CD_DATA&SE16N_CD_KEY,其中Key是抬头信息,DATA是修改的内容。

如果使用SE16N对表做了修改,想查询修改记录,可以使用报表:RKSE16N_CD查看修改的历史。起初,这个报表只能查看,不能删除,不过到Ehp4版本的时候,删除功能也集成到这个报表中。如果不想使用这个报表,可以使用另外一个报表来进行删除:RKSE16N_CD_SHOW_DELETE

当然,这几个程序都是版本相关的,大家可以参考Notes:1275614,或者1263844。

1、进入SE16,选择要修改的表,设置Data Browser 的Output list 为“SE16 standard list”;

2、让SE16显示出你要修改的数据,命令栏里输入“/h”;

3、双击要修改的行,进入debug界面,

       在程序 SAPLSETB / LSETBF01 的第25行的if处设置断点

                 refresh exclude_tab.

                 if code = 'SHOW'.   

       F8执行,在断点处,将code的值改为“EDIT”(当然也可以改为“INSR”、“DELE”)

4、修改除key值外的任何值,然后保存。

 

第一步,进入SE16,输入需要修改的表的名字

第二步,在选择屏里输入点选择项来找数据,找你需要修改的那行

第三步,在表的内容输出的界面,在command field里,就是用来输入tcode的那个地方,输入/H,回车,会看到下面有绿色提示,意思是debug on

第四步,找到需要修改的那一行,双击来显示,这个时候会进入代码,main program是“SAPLSETB”,source code of 是“LSETBF01”,在25行处,可以看到以下代码:

    refresh exclude_tab.

    if code = "SHOW".

    ……

第五步,在这个if前加个断点,然后把code的值改成‘EDIT’

第六步,按F8运行,看到出来的结果是除了key field,其他的字段都可以被修改了,修改后按保存按钮

 

 

四 . SE37输入SE16N_INTERFACE

事务代码se37,SE16N_INTERFACE,测试执行,如图:

点击测试执行,如图:


直接点击执行,就调出来进行修改表,如图:

### SAP SE16 调试技巧与解决方案 SAP SE16 是一个用于查看维护 SAP 数据的标准事务代码。然而,在使用过程中可能会遇到各种问题,以下是一些常见的调试技巧解决方案[^1]。 #### 1. **数据库连接问题** 如果在事务 SE16 中无法正确显示或访问 HANA 数据库中的内容,可能是由于数据库连接配置错误导致的。确保在“数据库连接”字段中选择了正确的数据库连接[^1]。如果该字段留空,SE16 将默认使用 ERP 系统主数据库中的功能,这可能导致运行时过长或无法访问目标数据。 #### 2. **结构不一致** 当使用 SE16 访问 SAP HANA 时,若结构与 SAP ERP 字典定义不完全一致(例如字段名称不同),可能会触发短转储(Short Dump)。为避免此类问题,建议仅对一对一复制的使用 SE16。对于其他(如仅在 SAP HANA 中创建的),应使用 SAP HANA Studio 进行评估。 #### 3. **性能优化** 在某些情况下,SE16 的查询可能需要较长的运行时间,尤其是在处理大量数据时。可以通过以下方式优化性能: - 使用过滤条件减少返回的行数。 - 避免对视图进行操作,因为视图的行数统计是跨所有客户端计算的,可能导致不必要的延迟[^1]。 #### 4. **权限问题** 如果用户在执行 SE16 时遇到权限不足的问题,可能是因为缺少必要的授权对象。例如,`S_TABU_NAM` 是用于访问的授权对象,确保用户具有适当的权限[^2]。 #### 5. **批量修改数据** 对于需要批量修改数据的情况,可以考虑使用 SE16N 或 SE16H 的增强功能。例如,在引用中提到的 KONP 货币单位问题,可以使用 ABAP 代码脚本或事务 ME12 来实现批量更新。以下是通过 ABAP 脚本批量修改数据的示例: ```abap DATA: it_konp TYPE TABLE OF konp, wa_konp TYPE konp. SELECT * FROM konp INTO TABLE it_konp WHERE kurst = 'CNY'. LOOP AT it_konp INTO wa_konp. wa_konp-kurst = 'RMB'. MODIFY konp FROM wa_konp. ENDLOOP. ``` 此脚本将 KONP 中所有货币单位为 `CNY` 的记录更改为 `RMB`[^3]。 #### 6. **日志与跟踪** 在调试过程中,启用 SQL 跟踪可以帮助识别潜在问题。通过事务代码 `ST05`,可以捕获 SQL 语句并分析其执行情况。此外,事务 `SM37` 可用于监控后台作业的运行状态。 ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值