Microsoft Access is designed for rapid application development. A Form wizard allows fast and easy application development using Bound Forms. The Bound Form requires little or no programming, and is ideal for the amateur programmer.
The Unbound Form requires the use of VBA (Visual Basic for Applications) and ADO (ActiveX Data Objects) or DAO (Data Access Objects) to retrieve and update records.
A Microsoft Access Form can have a mixture of fields that are Bound or Unbound.
The Bound Form
The Bound Form has fields that are linked directly to a database Table. Any change made to a bound control in a Form is immediately updated in the corresponding field of the current record of a Table.
The features of the Bound Form include:
- The Form can be set up quickly and easily using the Form Wizard
- The Form has a Find, Filter and Sort facility
- The Form shows the record number and a navigation bar
- The Form allows selecting, adding, deleting or modifying records
- Sub Forms can be easily setup to handle one-to-many relationships
The drawbacks of the Bound Form
The problems are:
- The default behaviour of Access may be unacceptable to users – such as the automatic saving of fields or records
- Cancellation of an update with the Esc key is not user friendly
- There can be performance issues when manipulating data from the Back-End Database
- There is the need to explicitly control record locking
- The Access error messages are not user friendly
- It is difficult to convert a Bound Form to VB.Net
- It is difficult to extract the business rules from the Form logic
- Undoing a change to a field or a record can be difficult
- There is no definite point at which a Record is saved
- Network loads can become a problem
- There is an overhead when a Bound Form is kept open for length periods
- The logic of a Bound Form can get quite complex
With the Bound Form, validation is done field by field, using the Before Update Event. When validation involves multiple fields, this is not the easiest way to ensure clean data. Multiple Events can very easily invoke each other repeatedly, which can be difficult to cure.
The Unbound Form
The Unbound Form provides a better and more professional solution. It is needed for greater efficiency, to extend user numbers and to provide better control of the application.
The advantages of the Unbound Form are:
- There is greater control in reading and writing of records
- There is greater control over editing, saving and deleting records
- Records can be updated only when all fields are valid
- There is user friendly error handling
- There is greater efficiency in accessing records
- Reduction in concurrency issues (record in use problem)
- Data integrity can be assured
- The Unbound Form is easily converted to a VB.Net project
- Conversion of the Back-End database to SQL Server will be easy
For simple or one-off applications, the Bound Form is ideal. It can be set up and running within minutes.
For a Company administration system, in amulti-user environment, the additional work in setting up theVisual Basic code logic of an Unbound Form will be time well spent.