Save Eclipse将删除空行点触发器保存

Save Eclipse将删除空行点触发器保存,save,delete-row,eclipse-scout,Save,Delete Row,Eclipse Scout,在一种形式中,我有系统OK按钮: @Order(910.0) public class SaveButton extends AbstractOkButton { @Override protected String getConfiguredLabel() { return TEXTS.get("Save"); } } 我有tableField 如果我在该表中添加新的空行,则在按“保存”按钮时会调用execStore,但如果我删除此空行并按“保存”按钮,则不会调用任何

在一种形式中,我有系统OK按钮:

@Order(910.0)
public class SaveButton extends AbstractOkButton {

  @Override
  protected String getConfiguredLabel() {

    return TEXTS.get("Save");
  }
}
我有tableField

如果我在该表中添加新的空行,则在按“保存”按钮时会调用
execStore
,但如果我删除此空行并按“保存”按钮,则不会调用任何内容,按钮仅关闭窗体

如何解决这个问题?我希望能够删除空行

编辑: 我发现所有只填写智能字段的行在删除时都不会检测到更改。(不仅仅是空行…)


问题是表单的
checkSaveNeeded
返回的
doOk
方法中没有任何更改。

如何添加行

您可以将行标记为已插入或未插入。请参阅:
addRow(newRow,markAsInserted)在桌子上


第二个问题是“表字段如何计算表单是否需要存储”

您可以使用
execissaveneed()
在上实现自定义逻辑。见童军论坛上的这个问题:


最后一点是:当一行在可编辑表中的状态为
ITableHolder.status\u NON\u CHANGED
时。当
智能列
中的值随
智能字段
更改时,行的状态不会更改为
ITableHolder.status\u UPDATED

我刚刚测试了它,它工作正常


对于行删除,这取决于表字段的配置方式。属性的值是多少?
isAutoDiscardOnDelete()

此处的文档对Neon仍然有效:

如果
isAutoDiscardOnDelete()
返回
true
(如果
getConfiguredAutoDiscardOnDelete()
返回
true
,则会出现这种情况),当删除表字段中的行时,它将被丢弃。没有要保存的内容,因为表字段中没有已删除的行(我提到的wiki部分对所有内容进行了解释)


如果要在服务器上执行删除操作,则不应使用“放弃”行,而应仅删除它。通过这种方式,您可以在FormData中获取信息,并从中处理行状态,如下所述:(再次使用我们wiki中的旧文档,因为它多年来一直是这样工作的。这在Neon中并不新鲜)。

我认为如何插入行无关紧要,因为我添加单元格单击保存,再次编辑同一表单,删除行,保存,但这次保存不会调用execStore。我知道我可以重写execissaveeded(),但表本身不应该处理行的删除吗?我的缺点是删除行时调用touch();,但我不喜欢这样。就我用M6测试它而言,一切正常。我已编辑我的帖子。我已将getConfiguredAutoDiscardOnDelete设置为true。但是我们目前使用的是M5,表代码是旧的,M6没有什么新的。。。(从wiki中的旧文档中可以看到)