Project DescriptionTool for Microsoft Dynamics CRM 2011 to manually run the Deletion Service
This tool allows you to manually run the Deletion Service for Dynamics CRM 2011 On Premise.
(It is unknown if the tool will work with CRM 2013)
Such a tool has existed for CRM 4.0 when the DeletionService had a much more prominent role.
http://www.infinite-x.net/2009/08/26/free-utility-run-crm-deletion-service/As of CRM 2011, the DeletionService primarily cleans up the POA (PrincipalObjectAccess) table, and the aforementioned tool doesn't work with CRM 2011 (or instances of CRM using SSL)
There are cases where orphaned records in the POA table can cause unexpected bahaviour in record access - particulary regarding Implicit Shares
(See this article:
http://garethtuckercrm.com/2013/04/24/implicit-shares-in-microsoft-crm-2011/)
Simply changing the relationship from Parental to Referential does not remove the Implicit Share from existing records - they have to be deleted and recreated. If you delete and created them using the same Guid, you may find that the implicit share persists.
This tool can be used to cleanup unwanted implicit shares after removing a Parental relationship.
You would delete the records in question, run this tool, then reimport the records.
--
The tool must be run on the CRM Server (front or backend, doesn't matter). It makes use of an internal CRM assembly - Microsoft.Crm.dll - which provides the ability to query organization and run the service.
No connection information is necessary - just run the tool logged in to the server as a deployment administrator. Select the Organization, and click "Run Deletion Service". It should take about a second to run.
Note: This tool utilizes functionality from an internal, undocumented CRM assembly, which makes it unsupported. However, because it is calling a platform API (rather than other suggested alternatives like deleting the POA records direclty) it is unlikely to have any side effects. It will either work, or if will not.
(That being said, don't hunt me down if you discover otherwise)