ERP systems are designed to be used by a large number of users who access the database simultaneously. In extensive implementations, this can mean hundreds of users. Under these conditions, it is critical to track the changes made to the data and know who made them, especially when these changes can have significant consequences on the correctness of transactions.
The Dynamics Business Central ERP system provides a change tracking mechanism through a functionality called the “Change Log.” This can be configured to provide, at the level of any field in any table in the database, information regarding the insertion, modification, and deletion of data. Below, we will present how to use this functionality.
Change Log Activation
First, the functionality must be activated. Activation is done on the “Change Log Setup” page, which can be accessed most easily using the search function in Business Central:
In this page we have to mark the activation of the functionality:
Enabling Tables to be Tracked
After the functionality has been activated globally it is necessary to specify the tables that will be monitored. From the page where we activated the change log, click on the “Tables” button and another page containing all the tables in the database will open.
To configure, position yourself on the table you want to track and select the type of action to be tracked: insertion, modification, or deletion. For each type of action, there is the option to track all fields in the table or only certain fields.
If you want to track only certain fields, select the “Some Fields” option, then click the button with three dots:
A page will open and in this page fields to be tracked can be marked:
Our recommendation is as follows: for setup tables, set tracking for all fields, and for transaction tables (orders, invoices, bank journals, etc.), you can set it for only certain fields. Otherwise, the change log can grow in size very quickly, especially if many transactions are recorded in the database.
Viewing the Change Log
After configuration is completed, the system will automatically log changes. These can be found on the “Change Log Entries” page:
Here you can see information about:
- The date and time when the action occurred
- The user who performed the action
- The name of the table on which the action was performed
- The name of the field
- The type of action: insertion, modification, deletion
- The old value before the action and the new value after the action
Consulting the change log is useful, but it can occur a relatively long time after the changes have been made, and some of these changes can have a significant impact on transactions. For example, if someone selects the wrong general ledger account in a setup, all transactions that reference that setup will have the wrong account, and we could be talking about dozens or even hundreds of entries!
For these situations, when we want to monitor changes to fields we consider particularly important in real-time, we can use a functionality called ”Monitoring field changes”, functionality through which an email notification can be sent to interested parties whenever a field is modified.
Deleting Change Log Entries
The change log table can grow rapidly in size, especially when monitoring documents (orders, invoices, etc.). Therefore, it is useful to delete change log entries older than a certain period. Deletion is done by establishing a data retention policy, which we will describe in detail in a future article on how to configure such a policy.
Elian Solutions is part of the Bittnet Group, active for over 15 years as an implementer of the Microsoft Dynamics 365 Business Central ERP system. With a team of over 70 employees and a portfolio of over 250 clients, Elian Solutions is one of the key Microsoft partners for ERP systems.