|Contents:||Main||Chapter||See Also:||Getting Started Manual||Advanced User Manual|
With some important exceptions, the database is unaffected during a ScreenMan editing session. Changes are filed only at the user's request.
However, there are two situations in which changes to the database are made immediately:
When the user attempts to delete an entry, ScreenMan issues a warning that deletions are immediate and permanent. Even if the user quits the form without saving the changes, the entry is not restored to the database.
Similarly, when the user adds an entry to a file or subfile, that entry is immediately added to the database. The entry is added with values for the .01 field and all required identifiers. After the entry is added, however, changes made to the data for that entry are part of ScreenMan's transaction and are filed only at the user's request. Also, in contrast to deletions of entries, if the user subsequently quits the form without saving changes, entries added during the editing session are deleted.
Because of this, you should consider cross-references that can cause an overall state change when the user adds an entry and when ScreenMan subsequently deletes the entry. Triggers, bulletins, and MUMPS-type cross-references can cause irreversible events to occur. Therefore, when you design cross-references for the .01 field and the required identifiers for entries the user may add or delete during an editing session, it is best to ensure that the kill logic can undo the effects of the set logic.
Reviewed/Updated: March 10, 2007