I have menu item with IsLazyLoaded = True. Everytime I edit some record and then change selection, prompt is shown whether I want to save the record or not:
Questions:
Is it possible to not show this prompt for lazy loaded screens? For menu without lazy loading the prompt is not shown.
I would expect that it is configured by RequestSaveAfterUpdate, but it doesn’t work - instead this option turns on autosaving, which is strange.
I would expect that autosaving is handled via AutoSaveOnListChange option, but this option doesn’t seem to do anything.
Showing the prompt is correct. We must save data when changing the master record as the whole point of lazy loaded screens is to keep as little as possible data on the server. So we only keep the currently edited record. After changing the record we have to either save it or throw it away.
As for the behaviour of the options you mention that looks a bit strange.
@washi what is the correct behaviour according to an old client?
Old client implementation: if RequestSaveAfterUpdate is true, each time the information on changes is returned from server (it doesn’t matter which operation), if there are no errors a save request is sent to server by client.
So it should work in such way, that the OP’s screen is never dirty and the prompt doesn’t show at all.
Thanks for info. I confirm that RequestSaveAfterUpdate works as washi stated. I will use this switch, so that no save prompt will be shown.
(AutoSaveOnListRecordChange functionality remains unknown.)
We can close this topic.
I think that AutoSave should save the whole record when changing the main record. So the screen remains dirty (which it has to if it is e.g. master-detail) but instead of prompting for save it just does it if there are no data errors.