Back Button handling when using CreateInsert on View Objects
ThiagoMay 3 2008 — edited May 3 2008Hi all,
I have been using CreateInsert on the application we've been developing for a number of reasons, some are:
1) Our default CRUD operations are implemented as a read-only table that has a create button calling CreateInsert on the base View Object, then sending the user to an input form. Most of those input forms have selectInputText components, and the event of clicking the torch to open the lov discards the row if it was created by a simple Create operation.
2) Some of them are drawn as master-detail forms, when Create is used with these, the detail table shows the last row's child records. When using CreateInsert, this behavior does not occur and the table shows empty as it should be.
However, we do have situations where the user will decide to give up and not to make any changes, navigating away from the input form without using our default Cancel button (that calls Rollback on the App Module). Whenever he gets back to the read-only table search page, it shows a blank row (from the CreateInsert operation) and keeps throwing the validation errors on this row, forcing the user to close the entire application and logging in again.
How can i handle these unexpected errors without relying on the Create operation STATUS_INITIALIZED behavior (that i cannot use)? Is there any way to detect when the user is acessing the page from another origin?
I have created a method in the application module that checks if the transaction is dirty, and issuing a rollback if it is. But i am at a loss about where, and on which condition, to call it from my application... PrepareModel? PrepareRender? IfNeeded with a condition?
Thanks a lot in advance..
Thiago