0

我有两个页面,例如第 11 页中的 10 和 11 我有处理按钮,该按钮正在将表更新回数据库中,并且在将用户处理回第 10 页之后,所以无论如何我想回滚在第 11 页过程中所做的更改或可能必须通过使用按钮在第 10 页上进行永久更改来保存第 10 页。

我试过在第 11 页运行 ROLBACK,但它不起作用,因为 Apex 在第 11 页做了隐式提交,所以我无法从回滚中得到任何东西。

我实际上只想从第 11 页而不是从第 10 页进行永久更改 请建议我如何实现这一点,

4

1 回答 1

0

一种选择可能是使用(全局)临时表 (GTT),其描述与您当前在第 11 页流程中使用的相同。

这样做,您将在 GTT 上提交更改(确保它们是使用on commit preserve rows选项创建的)。然后,当您被重定向到第 10 页时,

  • 将更改传播到“真实”表(如果您选择保留这些更改)
  • 清除 GTT 并对“真实”表不执行任何操作(如果您选择放弃更改)
于 2019-06-24T10:05:30.987 回答