Have you encountered these limitations when working with Duplicate Detection functionalities in Dynamics 365?
You can include only 450 characters in the matchcode. Either change or delete rule conditions to reduce the number of characters included, and then try again.
Bulk Detect Duplicate Limit Exceeded. The Bulk Duplicate Detection job cannot detect more than 5000 duplicates. Please review your duplicate rules or resolve existing duplicates and rerun the job
Although the OOB duplicate detection functionalities are useful in some cases, I often find myself wasting hours to workaround those limitations when dealing with large amount of data. So I decided to build a solution which allows me to quickly query for duplicates and see how many records duplicated.
Deduplicator is a plugin for XrmToolBox. You can download the plugin in XrmToolBox Plugin Store.
What Deduplicator can do
In the first release, it has below features:
- Allows matching multiple fields with no length limitation.
- Allows searching more than 5000 records.
- Allows selecting fields for results view.
- Shows total of duplicated records
Deduplicator is open source
Empowerment of individuals is a key part of what makes open source work, since in the end, innovations tend to come from small groups, not from large, structured efforts. – Tim O’Reilly
You can find the source code of the plugin in Github at:
Please rate and share the plugin if you think it helpful, also don’t hesitate to leave any comment here or in the GitHub to make it better or if you find any bugs.
Alternate keys is a useful functionality introduced from CRM 2016. It allows you specify one or more fields to be an alternate key and use it to identify a record instead of using GUID. This is extremely helpful when you work with data migration and/or data integration between systems. More about Altenate Keys here.
Only attributes of the following types can be included in alternate key definitions: Decimal, Whole Number, Single line of text.
However, there are some restrictions in what field can be selected as alternate keys which the document doesn’t mention. Below is the non-exhausted list of them, I’ll update this if I find more:
- Secured fields. A field with “Field Security” enabled doesn’t show up in the list when you creating alternate key.
- “fullname” in “contact” entity
- “domainname” in “systemuser” entity
So be aware when you work with alternate keys. Hope it helps!
If you try to use
HttpUtility.UrlEncode in your plugin or workflow code, you’ll get a security error:
System.Security.SecurityException: That assembly does not allow partially trusted callers.
Because it’s not allowed in CRM Online.
Instead, we should use this one:
Voice of Customer (VoC) is a excellent tool for survey editor right in CRM, though it still lacks some nice to have functionalities. I’m not going to discuss about VoC in this post.
Survey Response is a entity collecting all Answers for Questions in the Survey. When user submits the survey, Survey Response and Answers will be created in CRM from Azure. The Survey Reponse will be created first and then related Answers will be created and look up to the Survey Response. This happens asynchronously.
So if we want to trigger a plugin or a workflow on Survey Reponse, we want to make sure the Survey Reponse has been created and all related Answers have come through. We shouldn’t trigger it on creation of the Survey Response as not all the Answers created in CRM; we shouldn’t trigger on creation of Answers either as Answers are created unorderly, the last answer may be created first. Instead, we should use an OOTB field called “msdyn_processingcompletetrigger”, it will be updated to Yes if the Survey Reponse and all Answers are created.
I encountered a weird case when trying to set record status reason to default value on creation of the record in CRM Workflow with Status Transition Rules enabled in the entity configuration. I’ll replicate the case and implement a workaround in my trial CRM Online instance. Continue reading “Can’t set record Status Reason to default value in CRM Worklfow with Status Transition Rules Enabled”