Tip #644: Async Dynamics CRM awaits you

Hanging minesweeper

Gayan “Performance Wizard” Perera hates waiting. Be smart, be like Gayan. For anyone who’s been waiting to get async/await support for the CRM SDK, you can now get a simple extension class from https://github.com/NZxRMGuy/crmsdk-async The downside with my one is that it’s a wrapper around the sync method – some people do frown upon this […]

Tip #639: I shall call him Squishy

I shall call him Squishy

Selecting a good name for an organization in CRM On-premises has always been a challenge especially when you automate provisioning of your CRM organizations. At least one would hope that the chosen name would stick. However, our special correspondent Mehmet “Sputnik” Ozdemir reports from the trenches that organizationid and name fields in the organization entity […]

Tip #627: Smart duplicate detection

DVD Rewinder

Woot-woot! Our video channel now has the official URL: https://www.youtube.com/CRMTipOfTheDay! (Hint: take a minute and subscribe). To celebrate this achievement, our video dude, Derik, has gone MIA. After 38 straight weeks of videos, can’t hold it against him. So today’s tip is not a video but something that has been on my todo list for […]

Tip #608: Generate documents in code

Generate document action in the workflow

CRM 2016 has the ability to generate documents using Word templates. For workflows there’s a custom action called SetWordTemplate which can be added via Add Step > Perform Action > SetWordTemplate. But what if you want to generate the document in a plugin, javascript or in external application so that the functionality can be used by custom […]

Tip #589: Programmatically Move Cross Entity Business Process Flow Stages in CRM 2016

It’s been a while since we’ve heard from Gayan “Not Daddy” Perera. As often the case with Gayan’s tips, this one is a nugget. Moving the stage of a cross entity business process flow programmatically can be achieved by using the NavigateToNextEntity request. Most of the parameters are self explanatory, the only tricky one is […]

Tip #569: Migrate knowledgebase articles to Interactive Service Hub like a boss

How to migrate KB article

If there is one bonus take away from the yesterday’s tip, it’s existing KB functionality will soon be deprecated so it is advisable to transition to new KB as soon as possible. So people started to ask, how to do that. tl;dr Long version Yes, some assembly is required. Good news, it’s not that difficult. […]

Tip #368: Keep your early bound classes lean

The convenience of early bound classes often overshadows the side-effects of using those. It is, indeed, very easy to write: CrmSvcUtil.exe /url:https://myorg.api.crm.dynamics.com/XRMServices/2011/Organization.svc /out:GeneratedCode.cs /username:”myname@live.com” /password:”myp@ssword!” then add generated file to the project and use syntax-checked a.accountname = “Acme Inc” instead of a[“acountname”] = “Acme Inc” (see what I’ve done here to demonstrate the usefulness of […]