Introducing Deduplicator for XrmToolBox

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.

Introducing Deduplicator

dd1.png

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:

https://github.com/khoait/DynCrmExp.Deduplicator

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.

Advertisements

Field Restriction in Alternate Keys

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!

 

Release of ‘Get Total Records Count Solution’ Dynamics 365 Solution

SharePoint & CRM

Although I created this some time ago in order to get an accurate count of important records in our system it’s taken me some time to tidy it up and get it ready for release to the public.

The project and all source code are available on GitHub, feel free to use it in any manner you see fit, however, I’d appreciate being credited and hearing about whatever you do with it.

View original post 160 more words

Social Pane control not working in custom forms?

This may save you hours of searching!

The CRM Grid - A Microsoft CRM Blog

What with being so busy with clients, combined with the growth of the CRM community, it’s been a long time since I discovered anything genuinely new that hadn’t already been blogged about elsewhere. Finally, over 18 months since my last post, I found something worth shouting about!

The Social Pane just shows as Notes on custom forms

I manage an ISV solution that is developed in CRM Online. The solution began life in the 2011 guise but I’ve recently upgraded to CRM Online 2013 and I’m in the process of redesigning forms. I wanted to use the new “Social Pane” style control that surfaces Activity, Notes and Wall Posts and is best seen on the native “Account” form. Several blog posts will tell you that this control can be added to your form by clicking on the familiar “Notes” button in the Form Designer. The problem was, on my custom…

View original post 271 more words

Alternative to HttpUtility.UrlEncode in Dynamics CRM Online

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:

Uri.EscapeDataString

When to trigger plugin or workflow on Survey Response Voice of Customer

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.

surveyresponsetrigger.png

Cheers!

Can’t set record Status Reason to default value in CRM Worklfow with Status Transition Rules Enabled

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”