Gotcha with Bulk Deletion Jobs in Dynamics 365

Roshan Mehta, 14 November 2018

Bulk Deletion Jobs in Dynamics 365 allow you to build a query and then bulk delete records in the system that match that query. To save time, you can use an existing System or Personal view when building your Bulk Deletion criteria. However, there is one very dangerous issue with this.

In Advanced Find, you can build left-join queries, using the “Does Not Contain Data” operator on joins. For example, the screenshot below shows a query that will return all Accounts in the system that do not have any Contacts. I have saved this as a Personal View called “Accounts with no Contacts”.

image

This view returns one result – “Frosty’s Icecream Store”.
  image

Note that there are 10 Accounts in the system that do have Contacts listed against them.

If we use this Personal View and then use it in a Bulk Deletion Job, the Bulk Deletion criteria will strip off the “Does Not Contain Data” operator and will think that the user hasn’t specified any search criteria. There is no way to add the “Does Not Contain Data” operator back into the criteria from the Bulk Deletion Wizard.

image

If you click on Preview Records, it will show you all 11 Accounts, including “Frosty’s Icecream Store”.

image

Continuing through the wizard will delete all Accounts, which obviously is very dangerous.

To sum up, be very careful with your Bulk Deletion Jobs and make sure you always click on Preview Records to make sure that you are deleting the data that you need to delete.