You probably heard of the new kid on the Azure block: Azure Functions, that allow serverless execution of code. Wouldn’t that be nice to be able to trigger this serverless execution from Dynamics 365? I’m glad you asked! Since functions are very new, some plumbing is required but not as much as one would think. […]
Tip #787: Creating records in Project Service
When creating records for one of the Dynamics 365 solutions, you may find yourself in the same situation as Guido “Trekkie not Star Wars fan” Preite. The simplest possible code to create msdyn_actual (part of the Project Service) generates “The given key was not present in the dictionary” error. One of the advantages (and curses) […]
Tip #785: How to restore USD session
This question frequently comes up during the USD (Unified Service Desk, not $) projects and training sessions: what is the most effective way to save/restore the entire USD session? This functionality would enable some interesting scenarios, e.g. transfer the entire session from one user to another with the call transfer, or simply save a complicated […]
Tip #777: So long Microsoft.Xrm.Client and thanks for all the fish
At the beginning of the year we reported some ongoing issues with CrmServiceClient and recommended continuing use of Microsoft.Xrm.Client. The issues reported have been resolved and, as of now, there are no compelling reasons to use Microsoft.Xrm.Client. If you’re starting new project then the choice is trivial – simply use nuget packages for XrmTooling and […]
Tip #772: Snooping around plugins
This week is MVP Summit week and, since Joel is not around to keep me in check, I’m going wild with the useful tools recommendations. Have you ever started building a new plugin and then hesitated with the question: What the heck are those input parameters for the RetreiveMultiple message? Wonder no more because Blake […]
Tip #771: Dynamics 365 Developer Toolkit is available
Good news for the developers – after long delays and missed Visual Studio releases, Microsoft Dynamics 365 Developer Toolkit has been released as a free Visual Studio extension and is available for download. The first thing you’d want to do after the installation is to let the tool know where your tools live. Go to […]
Tip #770: Power to the users and developers with Chrome extension
If you are developer or power user, and don’t mind shooting yourself in a foot, check out Chrome Extension for Dynamics CRM Power users, available as a Chrome extension or as a birthday suit a.k.a. source code. Just some of our favorite features: God Mode. Makes all mandatory fields optional. Makes hidden fields/tabs/sections visible. Makes […]
Tip #768: Avoid running out of memory when using CRM context
When you process large data in your code, email attachments, for example, there is always a danger of running out of the available memory. Consider this code dealing with the email attachments: The danger here is running out of memory on retrieval of the file attached to the CRM notes. Even though from C# point […]
Tip #757: Passing enumerated values to Web API
Shiny Dynamics CRM Web API has a number of useful functions that you can call using simple GET. Like ubiquitous WhoAmI: https://notarealorg.api.crm.dynamics.com/api/data/v8.1/WhoAmI, nifty RetrieveOrganizationResources: https://stillnotarealorg.api.crm.dynamics.com /api/data/v8.1/RetrieveOrganizationResources, or canny RetrieveDataEncryptionKey: https://yesthisisarealorg.api.crm.dynamics.com/api/data/v8.1/RetrieveDataEncryptionKey. Some of these functions require parameters and documentation how to pass parameters is available. Except that the documentation does not explain how to deal with […]
Tip #746: Bring in the specialist
Washing car on weekend is something that everyone can do on their own. Probably. But if some serious cleanup is required, one’s better off calling Mr Wolf. Same goes for complicated cases in customer service. If you run a secure shop that deals with the cases that include sensitive or personal identifiable information, then security […]