从ABAP表格删除默认值

问题描述:

我有一个用于在表中创建新记录的屏幕,它包含一个包含所有数据库列的表单。问题是,一旦屏幕被调用,它就拥有最后一个数据库记录。因此,要添加新记录,必须先清空当前值。从ABAP表格删除默认值

任何想法如何摆脱这一点?

发生这种情况的唯一方法是如果您首先将值选择到字段中。据推测,您已经在程序中声明了与表格类型相同的结构(可能带有TABLES语句),并在屏幕上命名了相同的字段,并且您正在选择结构中的值。 如果是这种情况,您可以简单地发出CLEAR并清除结构中的所有字段。 (您可以在最后一次更新后直接执行此操作)。 但是,如果没有程序和屏幕代码的样本,很难说明问题。

+0

嗯,我在屏幕画笔中生成了我的表单(打开F6时打开的向导),并且我确实认为它为字段使用与DB列相同的名称,如果这就是您的意思?实际上这部分没有涉及任何类型的代码,只有屏幕画笔生成的代码。一旦启动屏幕,它将包含值 – networkprofile 2011-05-31 19:18:35

我完全同意mydoghasworms的回答。 一个评论,当你找到表格时,一定要清除它的表格[],当表格带有标题时。

昨天我遇到了同样的问题,它在我清除屏幕上的表格时起作用。

+0

当使用带有标题行的表格CLEAR时,itab []只会清除表格的内容,但您仍然必须使用CLEAR itab单独清除标题行。无论如何,我更喜欢使用明确的标题行,但在OO上下文中不允许隐含的标题行 – Esti 2011-07-18 07:18:44