In complex CRM systems, tracking down the source of record changes can be difficult. Workflows, plugins, business rules, and scripts can change field values without user intervention. I was recently troubleshooting a Dynamics 365 form which always displayed the “unsaved changes” notification as soon as it was opened. I disabled all scripts and business rules, but I was still seeing the notice. By using auditing, I was quickly able to track down which field was being changed.
Under Settings > Administration > Auditing tab, tick the “Start Auditing” box. Here you can also enable user access to see who is logging in and out of the system. The system enables Common Entities for audit by default. If you later clear the “Start Auditing” field, any audit records that have been collected will be deleted.
Enable entities for audit
Under the entity definition, you can enable almost any entity in the system (notable exceptions: the Activity entity, and templates). When first enabling an entity for auditing, the system enables all fields by default.
Enable or disable fields for audit
Enable or disable fields for audit. You can edit multiple fields at once. In the entity field list, select the fields and click the “Edit” option in the command bar. Then, select the “Enable” or “Disable” button.
Use third-party tools
Use XrmToolBox to quickly edit fields for audit. With the Audit Center tool, you can quickly manage all auditing settings across all entities in your system.
When I saved the record marked “unsaved changes,” the audit record captured the changed field. Mystery solved! The changed field was a single line of text with the “URL” format. The system automatically formats the field with an “HTTP://” if it is missing. So no more using “www.trellispoint.com” in that field. Pretty obscure! But, now we have the information we were missing before, and we can say with certainty what was causing the message.
Auditing is great when your client (or boss) insists that things are changing that shouldn’t. Now, you can track down exactly when updates occur, whether by a workflow, business rule, plugin, or rogue user on the edge who can’t play by the rules!