Our current application is written in Delphi 5.
It uses an Employer Data Base (Master DBase DBF/MDX) and four detail data Bases (Dbase DBF/MDX). There is no master - detail relationship between Employer and the detail recods. The connection is 'loose' and it is maintained by the program. Each one of these data bases is updated via a single form for Add, Change, Delete. The proram has logic already to delete the detail records if the Employer DB is deleted.
The program seems to open all data bases together and uses them, but there is no provision for multiple users to work concurrently in the event the application data bases are defined/stored on a central server. (\\serverName\[url removed, login to view]) or a mapped drive.
Review the data base operations of the program and make appropriate changes to:
- Disallow updates on the same Employer by a second user (based on Employer Key id) and of course disallow updates on the detail records. A message that the Employer record is used by a second user should be displayed if it happens
- Make necessary changes to the application to ensure multiple users do not compromize the integrity/accuracy of the central data bases. A second user should be able to update another Employer and the detail records.
- Test the application in a multiuser environment to ensure the integrity of the data bases and its indexes
- Enter comments in the program where changes have been made such as //ProgrammerId yyy-mm-dd so we can easily find the changes made.
We will provide source code of the application.
You need to have Delphi 5, have sufficient experience in similar projects and be responsible.