Thursday, September 13, 2018

Quick tip: CRMServiceClient vs CRMConnection

Starting with Dynamics 365 build number 9.*  you must use the XRM Tooling assemblies and the CRMServiceClient instead of the CRMConnection class – see for more information.
First you will need add the nuget package Microsoft.CrmSdk.XrmTooling.CoreAssembly (Core assembly required to develop managed code using the Xrm Tooling Connector)

Afterwards, there are a number of ways that you can instantiate a CRMServiceClient object – see  Use CrmServiceClient constructor to connect to Dynamics 365 or Use connection strings in XRM tooling to connect to Dynamics 365

Tuesday, September 11, 2018

Dynamics 365 monthly reading list August 2018

Technical topics (Configuration, customization and extensibility)
Topics for Dynamics 365 business analysts, project managers, power users and end users

Monday, September 10, 2018

Introducing the Dynamics 365 Health Accelerator

The Dynamics 365 Health Accelerator is directly available from the Microsoft AppSource and allows you to rapidly develop healthcare solutions by providing a data model which supports entities based on the Fast Healthcare Interoperability Resources ( framework created by HL7. Besides the data model, it also contains  pre-built dashboards, workflows, and sample data, as well as other tools to help partners build and deploy new healthcare solutions. The Dynamics 365 Health Accelerator is part of Microsoft’s Industry Accelator initiative which supports industry partners by extending the Common Data Model.

Figure 1. Patient timeline:  presentation of clinical information about a patient in chronological order enabling providers to visualize all patient interactions and make informed care decisions

Figure 2.  Care Team Visualization: A connected view of the care team associated with a patient and their roles that can be configured to include family and other related relationships


Tuesday, July 31, 2018

Dynamics 365 October 2018 release notes available and why you should care

Microsoft recently decided to change its update policy for Dynamics 365/CRM online – see Dynamics 365 Customer Engagement (administrator guide) – manage updates  for more details. One of the important changes is that all customers will need to be on the latest version from February 1, 2019 onwards. Therefore it is highly recommended to keep up to date with upcoming changes. Microsoft therefore committed to delivering the release notes of upcoming versions a couple of months in advance.

You can read the October 2018 Dynamics 365 release notes (239 page PDF) yourself and if you still need to catch up on the Spring 2018 release notes – there is a now a Business Applications Release Notes page -  or you can read about the highlights below:

Sunday, July 29, 2018

Dynamics 365 monthly reading list July 2018

Technical topics (Configuration, customization and extensibility)

Topics for Dynamics 365 business analysts, project managers, power and end users

Thursday, July 26, 2018

Dynamics 365/CRM Podcasts

Keeping up to date with all of the information on Dynamics 365 is quite a challenge – luckily Gus Gonzalez and Mark Smith did a great job by creating these podcast shows which help me during the daily commute - 

Wednesday, May 23, 2018

Dynamics 365 monthly reading list April 2018

Technical topics (Configuration, customization and extensibility)

Topics for Dynamics 365 business analysts, project managers, power and end users

Tuesday, May 22, 2018

Azure Data Factory v2 supports new data connectors for Salesforce Marketing and Oracle Responsys

Microsoft recently announced that Azure Data Factory (v2 functionality in preview) now enables you to copy data from Salesforce Marketing Cloud and Oracle Responsys by using Copy Activity. These two connectors are currently available in ADF copy activity authoring user interface.

For more information, see the Salesforce Marketing Cloud connector and Oracle Responsys connector articles. And you can always find the full supported connector list from supported data stores.


Thursday, April 12, 2018

Update on Activity Log Management for Dynamics 365

Update: thanks to @powerobjects and for directing me to the new documentation (Posted updated on April 13th based on this info)

Last summer Microsoft announced a number of updates on the way that auditing functionality would be made available as outlined in Dynamics 365 July 2017 update: activity logging and session management for security and compliance . A couple of weeks ago Microsoft, updated their official documentation on these two features:
In this post I will focus on the new activity log management functionality, which extends the existing auditing functionality in Dynamics 365 with support for auditing on all data and all operations (including admin operations), with near real-time support, out of the box SIEM integration (Security Information and Event Management systems which provide real-time monitoring, correlation of events, alerting, etc ...) and seamless integration with Office 365 and Azure. Since auditing occurs at the SDK layer of Dynamics 365, much more data is available than just activities.

It is important to notice that the documentation states that this feature might change as well as limited availability so it might be that on your Office 365 tenant the functionality is not available (yet).

The only recently updated Microsoft Dynamics 365 (online) security and compliance planning guide also does not (yet) make a mention of this functionality within the Microsoft 365 Security and Compliance Center.

I however briefly looked into the Microsoft 365 Security and Compliance Center in one of the tenants that  I administer, and  listed below are a number of my findings:

Figure 1. Pre-configured Dynamics 365 audit log search reports.

Figure 2. Auditing settings screen when activity logging is enabled.
The documentation gives already a good indication on the way that Microsoft will proceed with this new functionality so I’m really eager to get my hands on this and see how this functionality can be used. In the meanwhile you might also take a look at the Actionable Audit App (Appsource) to access audit logs functionality as an alternative to see if it covers your specific needs and requirements.


Dynamics 365 monthly reading list March 2018

Technical topics (Configuration, customization and extensibility)
Topics for Dynamics 365 business analysts, project managers, power users and end users

Wednesday, March 14, 2018

Dynamics 365/CRMUG Belux chapter meeting on digital transformation, D365 for Marketing and GDPR

On April 18th the Belux CRMUG chapter organizes the next local chapter meeting – check out the agenda below and register for the Q2 2018 CRMUG Belux Chapter meeting .
  • Digital transformation at MLOZ and Partenamut with Dynamics 365 (Presented by: Olivier Callebaut, MLOZ and Etienne Gonsette, Partenamut)
  • Dynamics 365 for Marketing (Presented by: Dieter De Cock, Microsoft)
  • GDPR and Dynamics 365 – the Waldorf and Statler perspective (Presented by: Stephane Dorrekens, Business Elements and Joris Poelmans, Realdolmen)
This is a free event, but registration is required .

Monday, March 12, 2018

Dynamics 365 monthly reading list February 2018

Technical topics (Configuration, customization and extensibility)

Topics for Dynamics 365 business analysts, project managers, power users and end users

Wednesday, January 17, 2018

Dynamics 365 monthly reading list December 2017

Technical topics (Configuration, customization and extensibility)
Topics for Dynamics 365 business analysts, project managers, power users and end users

Monday, January 15, 2018

Speaking at Dynamics 365 Saturday Amsterdam

I will be delivering a session about chat bots and Dynamics 365 at Dynamics 365 Saturday Amsterdam on the 3d of February. Registration is free.
Dynamics 365 Saturday is a Technical & Strategy event organized by the community with the following credo: “Learn & share new skills while promoting best practices, helping organizations overcome the challenges of implementing a successful digital transformation strategy with Microsoft Dynamics 365”.

Searching in knowledge base articles in Dynamics 365

Knowledge base articles are a base component of the Service Management module in Dynamics 365. The knowledge base is a repository of informational articles that can be used to help customer service representatives resolve cases. Knowledge base articles can be emailed to a customer, which can be sent either through the Dynamics 365 interface or through the Microsoft Dynamics apps for Outlook.
With the introduction of the new knowledge articles entity data model (KnowledgeArticle) in Dynamics CRM Online 2016 Update 1   and Microsoft Dynamics CRM 2016 SP1 (for on premise) (Release documentation 8.1 – January 2017) , the existing entities for knowledge management: KbArticle, KbArticleComment and KbArticleTemplate were deprecated.

You should now use the newer KnowledgeArticle in your code  (See Important changes coming in future releases of Microsoft Dynamics 365), which also support versioning and translation support.
In version 8.1, these knowledge articles became visible in the interactive service hub which was revamped into the Customer Service Hub in version 9.0 (Dynamics 365 July 2017 update). The Customer Service  Hub also contains a number Knowledge Base dashboard - one with "your knowledge base articles" and one specifically for a knowledge manager (see screenshot below).

If you want to learn more about how to work with knowledge base articles, you should really take a look at Reduce call handling times with knowledge articles in the Customer Service Hub . Knowledge base articles are also directly shown in a tab on a case form (see screenshot below).

It is also possible to execute full-text searches against the new knowledge articles using the FullTextSearchKnowledgeArticleRequest which uses the following parameters:
  • QueryExpression: used to set additional query criteria and for which you also need to set the PagingInfo otherwise no results are returned
  • RemoveDuplicates: remove duplicate versions of the same Knowledge Article
  • SearchText: the text to search for in Knowledge Articles
  • StateCode: required parameter which accepts an integer for the different statuses of a knowledge article such as Published, Draft, Approved, etc…
  • UseInflection: searches for all different tenses of a verb or both the singular and plural forms of a noun. Underlying SQL full-text search is used (For more details see Searching for the inflectional form of a specific word
Code sample: searching within knowledge base articles using FullTextSearchKnowledgArticleRequest


Monday, January 08, 2018

Quick tip: finding all users with Dynamics 365 Service Administrator role in Office 365 tenant with PowerShell

Unfortunately the Office 365 Admin Portal, does not contain a predefined view to show all users who have the Dynamics 365 Service Administrator role – this role allows you to manage Dynamics 365 at tenant level (See Use the service admin role to manage your tenant for more details). But luckily you can also retrieve this information using PowerShell.

First make sure that you install the different prerequisites as outlined in Connect to Office 365 PowerShell – next open Windows Azure Active Directory Module for Windows PowerShell. To connect to Office 365, simply type connect-msolservice . Get-MsolRole will give you a list of all administrator roles. You will see that the internal role name which is listed is still "CRM Service Administrator". The last line will export all users with this role to a CSV file

 get-msolrole | select name, description  
 $role = get-msolrole -rolename "CRM Service Administrator"  
 get-msolrolemember -roleobjectid $role.objectid | export-csv d:\temp\serviceadmins.csv  

Sunday, January 07, 2018

Fix for unable to login to Dynamics CRM 9.0 with CrmServiceClient and .NET 4.7

When you try to connect to Dynamics 365 9.0 from within a console app using the CrmServiceClient, you might still encounter an error “Unable to login to Dynamics CRM” even though you have updated to the latest version of the different assemblies ( at the moment of writing).

This might be caused by the fact that you compiling against .NET 4.7 where the default value of the ServicePointManager.SecurityProtocol is SecurityProtocolType.SystemDefault (See What’s new in .NET 4.7 for more details).

If this is the fact, you might need to explicitly change the protocol to TL1.2 - which is a requirement for Dynamics 365 9.0 as announced in September 2017 in Updates coming to Dynamics 365 Customer Engagement connection security  - by adding a line ServicePointManager.SecurityProtocol.SecurityProtocol = SecurityProtocolType.Tls12