SAP 直接修改表

1.1.1 SAP表修改概览

SAP中的表分为配置表和业务数据表二大类,正常来说

后台的表中如果有错误,应该通过修改配置的方式来修改。

前台的表中如果有错误,应该修改相应的单据,如果该单据无法修改,应采用冲销单据,然后重新创建新的单据的方法。

但在某些情况下,我们可能需要采用暴力手段,直接修改表,最典型的情况是在一台无数人使用、非规范管理的Ides系统中,在这个Ides系统中有时会有一些错误存在,譬如本人使用的一台Ides系统中,MRP运行后,产生541的预留69014,查看该预留时,系统出现错误。

clip_image002

clip_image004

正常来说是通过事务代码OMJJ来配置移动类型,但是字段预留是无法修改的,此时只能通过暴力方法。

clip_image006

直接修改表最重要的原则就是,在采用暴力手段之前,务必保证修改的值是准确的,否则将导致不可预测的结果,我们首先要在另外一台SAP服务器中查看,该字段正确的值是什么,可以看到该字段正确的值为U。

clip_image008

1.2 修改表的方法

SAP中,具体而言,可以有以下三种方法可以直接修改表

本例中,移动类型的参数预留对应的表字段为T156-rstyp,移动类型为541.

1.2.1 方法1:通过SE16N用&SAP_EDIT直接修改表记录

引用来源:通过SE16N用&SAP_EDIT直接修改表记录

SE16N,输入表名、移动类型以及选择相应字段,然后输入&sap_edit,回车,即提示clip_image010,点击执行(F8)

clip_image012

此时系统为可编辑状态

可以直接修改值,可以插入值、删除值

clip_image014

clip_image016

 

1.2.2 方法2:事务代码SE16进入Debug界面,直接修改表字段值

事务代码SE16,输入表T156,移动类型541,执行,在下图中命令输入框中,输入/H,系统则将进入debug,出现提示clip_image018

clip_image020

在Debug的界面中的第八十六行,设置断点(BreakPoint),然后执行到断点,修改字段Code的值,从Show(显示)修改为Edit(编辑)。clip_image022

修改Code值完毕后,继续执行,则可以修改表字段的值,当修改晚相应的字段值,点击保存

clip_image024

1.2.3 方法3通过ABAP程序更改表

譬如在本例中,通过以下程序,可直接修改表字段值

 

REPORT zchange_t156_rstyp.

tables t156.

UPDATE T156 SET rstyp = 'U'

WHERE bwart = '541'.

if sy-subrc is initial.

WRITE / 'Field T156-RSTYP changed from " " to "U"'.

else.

WRITE / 'Field T156-RSTYP could not be changed'.

endif.

posted @ 2012-02-05 20:02  Sap FrankYue  阅读(11581)  评论(2编辑  收藏  举报