Woot, woot! At long last we can create passive clients – the ones that do not have someone sitting in front of them. Clients like web sites or services – and authenticate them without using username and password AND get the magic bearer token that is good to use in Web API. The detailed walkthrough […]
Tip #765: Dynamics 365 for Team Members – fine print
One of the new licenses is Dynamics 365 for Team Members Enterprise Edition, starting at $10 per user per month. As attractive as it sounds, this license comes with some caveats. Before shelling out your credit card and getting this license for all of your users, read the Dynamics 365 Enterprise Edition Licensing Guide, and […]
Tip #764: How to customize schedule board slots
UPDATE 03-JUL-2018 Following the discussion in the comments section: since version 8.2 customized booking doesn’t apply when using the schedule board daily, weekly, or monthly views. The good news is that this feature is on the roadmap! Original tip Schedule board is one of the centerpieces of the Dynamics 365 for Field Service (yep, that’s […]
Tip #762: Good news for Campaign Monitor fans
We rarely if ever post vendors news but considering the official demise of Dynamics Marketing, this one is hard to ignore. We’ve long been a big fan of Campaign Monitor, the (proudly Australian) vendor very much focused on helping to create beautiful and actionable emails “your customers can’t ignore”. And they just announced integration with […]
Tip #761: Script error in main.aspx on line 1
When creating fine-tuned roles for restricted access to your Dynamics CRM deployment, be very careful about privileges granted on Customization tab in role editor. Some of the privileges are easy to overlook and, if not granted, that can break the user experience. What I learned today is that CRM is very sensitive about Process privileges. […]
Tip #760: Scope your workflows
Admit it: when you create a new workflow, one of the first actions is to set the scope of the workflow to Organization. After all, when something changes, or new record is created, we want apply our business rules across the board, right? Most of the time you’d be correct. But this is an opportunity […]
Tip #759: Create a persistent backup of your instance
Now that you’ve mastered the backup and restore for your CRM Online organization, you may be wondering, now what? Backups are only held for three days, that’s not very useful, is it? Well, actually, it is. These transient backups are very useful if you perform some scary-looking update to your production instance. But more importantly, […]
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 #755: Logs grow rapidly if audit is enabled on mailbox entity
Be careful when enabling auditing on the Mailbox entity. As Jukka “Kalsarikännit” Niiranen has discovered after analyzing why one of the instance consumed disproportional storage: “It all looked fine at first, but looks like at some point the sync process had started to update the exchangesyncstatexml field with new data every few minutes. [This] field […]
Tip #754: How to secure your views
CRM is very good at securing data but there is no way to control visibility of the system views for the end-users. There are good reasons why would anyone want that: Systems grow over the time and it’s hard to control retirement process for old views, especially for large implementations. As a result, list of […]