Access JumpStart 2.0 | Blog

A Rapid Development Framework for Microsoft Access

When implementing logging in your Access app, some of the things you might want to log are:

Opening and closing of objects which have VBA associated with them. Typically Forms and Reports.

Try to add a log message which includes the primary key when you edit or add a major item in the system.

For example, I have a particular app in which there are JOBS, which have ORDERS, which have LINE ITEMS.

I first implemented logging when adding, viewing, or editing an ORDER. I added logging to the BeforeUpdate event for LINE ITEMS with a message that would tell me what was updated. This is the area of the application where I do the most changes and experience the most user errors. I include the order line ID, and the order ID when they are avaiable for particular operations (usually all of the above, except when initially adding an ORDER since it starts with a blank ID.

Recently, the customer asked for a record of JOBS form updates and I was recording that the form was being opened and closed, but not recording the primary key of the record. So I was able to report which users opened the form during a certain time frame, but not which job they edited. This was somewhat helpful but would have been so much more helpful if the customer had the JOB ID. So that is something I can easily add to the logging.

There are a couple of considerations, which include deleting the item, having a null id while opening a form in data entry mode or navigating to a new record. Navigation options you might have within your form should be considered as well so you can log when they start editing a different record. If you have add and view modes you might also want to note when you are moving between those modes.

A large consideration is to consider where in the system you are spending most of your time updating it or where the customer reports the most bugs. Start your logging efforts there. Continue updating and removing logging info as you find need. Try not to log too much as this can bog down your system.

My Access JumpStart framework includes logging capabilities, being able to log messages per a simple statement (AJS.PutLog) and can be configured in a number of ways to save log messages to the immediate window, files or database tables.

You can get more info on this system and purchase it here:

Link to purchase Access JumpStart!