删除adt表中的损坏行

2020-09-18 16:25发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


你好 由于服务器电源故障,我们客户的ADS停止工作。 因为关闭意外关闭了ADS,所以一张表包含损坏的行。 该行中的记录具有25342年的奇怪字符和日期...(请参阅附件)当我在arc32中打开此表并选择此行时,出现了7010错误(文件读取错误)。 一段时间后,可以在arc32中选择该行,但不能删除:错误7010

使用工具ADSFIX修复表也未修复表。 损坏的行仍在表中。

几次后,我们在arc32中将表重命名。 令我们惊讶的是,该行已删除:)

问题:在arc32中重命名文件是否可以删除损坏的行?

如果没有:在adt表中删除此类离线的最佳方法是什么?

(208.9 kB)

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


你好 由于服务器电源故障,我们客户的ADS停止工作。 因为关闭意外关闭了ADS,所以一张表包含损坏的行。 该行中的记录具有25342年的奇怪字符和日期...(请参阅附件)当我在arc32中打开此表并选择此行时,出现了7010错误(文件读取错误)。 一段时间后,可以在arc32中选择该行,但不能删除:错误7010

使用工具ADSFIX修复表也未修复表。 损坏的行仍在表中。

几次后,我们在arc32中将表重命名。 令我们惊讶的是,该行已删除:)

问题:在arc32中重命名文件是否可以删除损坏的行?

如果没有:在adt表中删除此类离线的最佳方法是什么?

(208.9 kB)
付费偷看设置
发送
3条回答
me_for_i
1楼-- · 2020-09-18 16:48

通常,我们不希望重命名表以清除损坏。 很难确定到底发生了什么。

听起来索引可能已损坏,导致索引和表中的数据不同。 可能重命名该表会在再次访问该表时强制重新索引。

在Architect中打开表并选择Table> Re-Index可能具有相同的效果。

此致

Mike Loop
高级支持工程师
SAP产品支持

Tong__Ming
2楼-- · 2020-09-18 16:58

我从未见过索引损坏是显示损坏数据的原因。 在这种情况下,我通常会遍历表并将记录逐条记录复制到新表中。 不知道表的重命名是否也一样。

SAP小菜
3楼-- · 2020-09-18 16:51

如果可以在Advantage Data Architect中打开表,则将其打开。 右键单击表格,然后选择"导出" ...导出到新表格。

检查" New"表,以确保所有记录都在那里。 然后右键单击包含不良记录的表,然后选择"空"。 接下来,右键单击表并选择"重新索引",然后右键单击表并选择"打包"。 那应该清除表中的所有数据并将其清空。 现在,根据表中的记录数,您可以将数据放回生产表中,如下所示:

方法1.打开保存到的表,然后选择表中的所有记录。 然后右键单击并选择"复制记录"。 现在,右键单击记录所在的生产表,然后选择"粘贴记录"。 所有好的记录将被复制回去,粘贴功能将不会复制坏的记录。 出现提示时,只丢弃不良记录。 现在,在生产表中检查第一条和最后一条记录。 仍然在字段中起作用的任何不良记录将在开头或结尾。 您可以手动删除它们。

方法2。当表具有成千上万的记录时,执行此操作。 使用优点备份实用程序备份表。 然后编写一个程序,通过遍历字段将记录从一个表加载到另一个表。 我编写了一个非常复杂的版本,该版本可检测表中有多少索引字段并相应地加载。 这是加载的简单版本:

对于x:= 0到BackuptTable.Fields.count-1执行ProductionTable.Fields [x] .asstring:= BackuptTable.Fields [x] .asstring;

清空,重新编制索引并打包生产表后,使用程序将数据加载回去。

一周热门 更多>