Tip of the Week #177 – Common Sense with Change Log
Developer Rikard Hult returns this week with a valuable tip about the Change Log – don’t let it become a data behemoth!
The Change Log is a powerful tool for keeping track of who changed what in the system. But – it can also create massive performance issues if used without careful consideration.
The Change Log can be used on setup tables without causing performance issues. It’s a good idea to activate it on important setup areas, such as the General Ledger Setup, and PrintVis tables such as Cost Center, Configuration, Operations, Product Groups, Speed Table, Speed Table Lines, Scrap Tables, Scrap Table Lines and more.
But, the Change log should not be used on transaction data such as Sales Orders, Sales invoices (Sales header/Sales line) and PrintVis tables like Cases, Jobs, Job Items and similar, fluctuating data.
If you would like to log all changes on unit price and quantity from the Sales Order line, don’t log all changes on the table Sales Line, but do only log on the fields Quantity and the field Unit Price. Be aware this will affect the performance a bit, however not as much as logging all the fields on the table.
The changes you make in the Change Log setup will affect the users after they have restarted the Client.
To see what is in the log, you need to open the page “Change Log Entries” and start filtering.
First, filter on the Table No. (it’s hidden, so please add it); avoid filtering on the table caption – that is slow filtering. Second, filter on that Primary Key Field (1, 2 or 3) that seems to contain the actual Order No.
And finally, sort by data and then start analyzing the data you have on the screen.
An example result could be like this: User RH changed the Unit price and the quantity on the 9th of November. You can see old and new values.
The Change Log table could become really big – a huge amount of data – so try to delete lines from your Change Log on regular basis.
How? Use the report “Delete Change Log Entries” and add a filter that retains the data you don’t want to delete. Also – try to do this outside of business hours because it could slow down the system.
Thank you Rikard!