September 5, 2016

Dependent OptionSet Generator - Overview - Part 1

Some days ago I released a new Dynamics CRM tool called Dependent OptionSet Generator.As the name suggests it helps to create and update dependent OptionSets, one of the possible approaches to filter data inside CRM UI. Scott Durow wrote an overview about this argument on his blog: "Option-Set, Lookup or Autocomplete", it's very useful if you plan to use dependent OptionSets in order to know the pro and cons of this approach. I want to thank Scott not only for his post but because he found the time to meet me when I was in London a couple of months...

September 3, 2016

Passing Arrays to JavaScript Web Resources as parameter

Despite the availability of Business Rules, JavaScript is still an important way to customize Dynamics CRM UI, especially in complex scenarios (or when you just need to hide a section). If you ever need to pass an Array as parameter inside the Event Handler form, you can declare it with the square brackets or using the Array keyword: // square brackets [1, 2, 3, 4 ,5] // Array keyword new Array(1, 2, 3, 4, 5) CRM Event Handler: As example we...

August 16, 2016

Fix the "Role Error" message when updating security roles

TL;DR: This solution has been posted on Dynamics Community Forums by Nithink.K quoting a Microsoft support answer (link). This post provides an easy solution to fix the issue. If you have a CRM Online instance and recently you tried to update a security role probably you got the following error: Role Error - Users cannot add privileges to or change access levels for roles to which they are assigned. For help with changing a role, contact your...

February 12, 2016

CRM 2016 Web API and plural names

The new Web API available for CRM 2016 is based on OData V4 protocol and the endpoint is /api/data/v8.0/ The MSDN contains several examples of the new endpoint, for example if we want to retrieve the top 3 accounts: /api/data/v8.0/accounts?$select=name&$top=3 Simple, right? if you want to retrieve from account entity you write accounts, if you want to retrieve from contact entity you write contacts, if you want to retrieve from opportunity entity you write opportunities. You write the plural. What a poor choice to use the plural form instead...

February 3, 2016

Dynamics CRM 2016 Certifications

Microsoft Dynamics CRM 2016 Certification Exams MB2-710: Microsoft Dynamics CRM 2016 Online Deployment MB2-711: Microsoft Dynamics CRM 2016 Installation MB2-712: Microsoft Dynamics CRM 2016 Customization and Configuration MB2-713: Microsoft Dynamics CRM 2016 Sales MB2-714: Microsoft Dynamics CRM 2016 Customer Servic...

January 7, 2016

Pay attention to the CRM version when using the SDK NuGet packages

Microsoft publishes the CRM SDK DLLs also as NuGet packages, you can find the list by browsing the crmsdk profile: https://www.nuget.org/profiles/crmsdk Because the packages are not separate by CRM version (for example a package for CRM 2015 and a package for CRM 2016) Microsoft simply updates the NuGet package increasing the version. This can be an issue in some projects as happened to me some days ago. I was working on a plugin for CRM 2015, my project was targeting .NET 4.5.2 and I installed the current version of CoreAssemblies (8.0.1). The...

January 2, 2016

Another year with the MVP community

Yesterday I received my second MVP Award and it's a great way to start the New Year! Be in the first quarter (or in the second one due to April Fools' Day) is a bit thrilling but worth the wait. Last October the MVP program made some changes, so my award category is now called Business Solutions and includes MVPs from the Dynamics family (CRM, AX, GP, NAV) and from Microsoft Project. An anniversary is also a moment to look back and see what was done last year. Personally I contribute to these sites: Dynamics Community, MSDN Forums and StackOverflow. I...