I use the Last Modified Date view of Procedures in an APP often to see what has recently changed.
I had a Procedure that the APP Call Tree was wrong. It had Procedures listed on the Calls Tab that were no longer called or changed. I know this change happened last year. I wanted to change the Calls Tab but not touch the Procedure Modified Date and have it sort to the top.
On the Procedure Properties window the Green Circle button save changes but does touch the Last Modified Date, so you cannot press that.
My Tip is to press the Blue Diskette button to save your changes as that button does NOT change the Last Modified Date. Then press the Red X Circle button to close the Procedure. AFAIK this loses nothing.
One issue you’ll run into is the IDE sees the Red X as Cancel so it will not refresh the Call Tree to show any changes. You have to change views, like a few times.
Another thing I may change is the Procedure Description that shows in all the APP views. It’s more documentation so I don’t want to touch the Modified Date.
That is exactly what it does, writes the changes to the APP.
The Cancel button will not undo those saved changes.
Sometimes when I have the Window in a good state I’ll press the Blue disk to save it. Then I’ll go do more Window changes that if I mess up I can Cancel the Procedure.
Sure I can cancel in the Window Designer but sometimes I can be switching between that and the Window… Code Editor so have made a few changes in each.
Pressing a button with the diskette icon forces saving data to APP only on the App Tree level. For modules, procedures, etc. the AppGen does following actions on pressing this button:
updates information in the in-memory database
writes changed data to a recovery file.
If size of a recovery file exceeds the limit set in the Application Options, the AppGen writes entire APP from the in-memory database to the disk.
I can’t be sure in my answers because I not managed the AppGen after writing it. Moreover, I guess, my AppGen sources are not up to date,
The AppGen applies the save action for all dialog tabs with changed information in both cases.
All AppGen dialogs are building on the base of actual information in the in-memory database (+ the AppGen generates the application in special modes to get required information for some dialogs, e.g. to build the embeds tree). If there is a difference after exit from some dialog with saving changes in either way, this is a bug.