1. On completion of all entries by all, say for a day.
2. When opening the report, check whether only one user has logged in. Close the report window, if there are more than one users.
3. Flag somewhere in the db, that the processing has started.
4. Check at the opening event of the 'tobe locked screens', whether this flag set in point 3. If set, quit the screen.
5. Create a report from the entered data.
6. Create / Modify required entries from the values arrived in the report. [ long process ]
7. Once completed, commit all data. Reset the flag set in point 3.
8. Ensure that no data entered for the processed period. Data entered will be for another date. Data cannot [should] not entered for the processed date.