Xpages 使用关系控件,您如何执行;“软”字;删除

Xpages 使用关系控件,您如何执行;“软”字;删除,xpages,xpages-extlib,Xpages,Xpages Extlib,在关系控件示例数据库(xpagesjdbc.nsf)中,有一个名为JDBC_RowSetDatasource的示例。这将使用视图面板,并在视图面板中启用复选框,以允许用户选择文档。然后有一个按钮,使用一个简单的操作删除所选文档,即删除所选文档。这将删除文档,但直到按下包含jdbcData1.acceptChanges()的代码的按钮,更改才会提交,并且行显示为要删除(第一个图标列使用isRowDeleted()调用确定图标) 我正在处理类似的情况,但需要重复控制。我可以用@jdbcDelete删

在关系控件示例数据库(xpagesjdbc.nsf)中,有一个名为JDBC_RowSetDatasource的示例。这将使用视图面板,并在视图面板中启用复选框,以允许用户选择文档。然后有一个按钮,使用一个简单的操作删除所选文档,即删除所选文档。这将删除文档,但直到按下包含jdbcData1.acceptChanges()的代码的按钮,更改才会提交,并且行显示为要删除(第一个图标列使用isRowDeleted()调用确定图标)

我正在处理类似的情况,但需要重复控制。我可以用@jdbcDelete删除行,但这是立即的。查看数据显示,即使在调用acceptChanges()之前,该行也已从数据中消失


既然我不能使用简单的操作来删除选定的文档(没有视图面板),那么用类似的方式删除行的Java等价物是什么?我对数据集和行的变量都尝试了deleteRow(),但在这两种情况下都出现了错误

Howard,这个简单的动作只是记住要删除的记录的主键。如果您想要模拟,您需要采取类似的方法(使用ViewScope变量或bean)来跟踪“已删除”记录和执行实际删除的方法。
闻起来像是一个bean的案例

您将如何引用该行,然后调用什么方法来执行“软”删除,就像我引用的示例XPage中的简单操作一样?@jdbcDelete立即删除记录。谢谢,霍华德,没有通用的方法。只有当记录有主键时,它才会工作。记住主键的名称,并在准备执行时对其运行@jdbcDelete。您需要将表更改为包含您想要设置的二进制字段“isDeleted”,以便可以取回记录。一个想法是:检查DECT为RDBMS的软删除Notes文档是否删除RDBMS记录(并在还原时重新创建)?从未尝试过它,如果能找到Outspephan会很有趣,请看我上面提到的演示。在按下带有acceptChanges()的按钮之前,不会提交带有简单操作的删除。谢谢,霍华德