I post this following an older thread -
76849
In the current version of JDev (9.0.3.x) - and it seems this functionality will not be changed - a call to
rollback() would clear all VO caches in the application module and, as a result, all active iterators would navigate to
first.
The trouble is that sometimes the user should be able to cancel some of the operations he/she performed. The suggested solution relies on the use of
refresh().
But here come the questions.
1. After refresh(), even if there is no more NEW/MODIFIED/DELETED row in all the application module, the transaction keeps saying "I'm dirty" ;) So, the Commit/Rollback buttons would be active, and the user would think there are still pending changes...
2. Following a call to refresh() on a view row, the state of the corresponding entity rows is not updated. This is even worse if the refresh processes also the containees.
Am I missing something, or there is no reasonable way to perform a
REAL rollback
AND not lose the iterators currencies?
As I was writing in the other post, maybe the new range-read mechanism of 9.0.4 could provide some better support. But it's quite impossible to wait until September to find it out ;)
Thanks,
Adrian