Save Eclipse将删除空行点触发器保存
在一种形式中,我有系统OK按钮: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,但如果我删除此空行并按“保存”按钮,则不会调用任何
@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中的旧文档中可以看到)