Dynamics 365 for Customer Service

Future Proofing your Dynamics 365 implementation and Configuration (Part 1 – The licensing question)

Microsoft Dynamics 365 Customer Engagement is an incredibly versatile platform that can be configured with relative ease. This is both a good and bad thing because often solutions that are implemented descend into configuration anarchy. Yes, it sounds as bad and it is. Imagine a deployment with hundreds of entities, attributes and solutions that are irrelevant or are there for no particular reason. On the other hand, what about loads of old ISV solutions that aren’t being used anymore. As fans of Dynamics 365, I can guarantee that most of us have seen this.

So how does one future proof their implementation? I appreciate the fact that there will be loads of opinions on this matter and there are hundreds of things one could do to manage this process from a business and technical point of view.

One of the big questions during any implementation is whether to utilise what is available out the box or whether to create custom entities and attributes. This is generally based on the scenario and the customer’s requirements. Personally, I prefer to use what is already available as much as possible as there is a load of functionality that you may need to rebuild using workflows and plugins if you go the custom route. IN ADDITION, when Microsoft release updates / upgrades, I know the functionality in my solution will be upgraded correctly and is in line with Microsoft projected functional roadmap. That isn’t to say that Microsoft don’t deprecate functionality. They definitely do!

Now, here is the thing: The licensing model limits us or controls what you can and can’t do as far as the addition of custom entities relevant to the existing functionality. YOU MAY NOT REPLICATE THE FUNCTIONALITY OF STANDARD ENTITIES IN DYNAMICS 365 WITH CUSTOM ENTITIES. If the standard entity is replicated then the user must be licensed appropriately for that standard functionality. This is available in the Licensing and Pricing guide on page 17. THEREFORE, in short… you can create your own “Case” entity, sure… However, you will then need to purchase the Dynamics 365 for Customer Services license for users that will be accessing this entity. This is because it replicates the current and standard case management functionality.

This makes absolute sense. Information on the enterprise-licensing model can be found here in appendix B. This is one of the first documents I generally consult during solution design. Microsoft suggest that configurators utilise what’s available within the standard Dynamics 365 platform so that when core functionality is added to the platform on top of the standard entity set or functional area (marketing, Sales, Service, PSA & Field Service), customers have access to this without having to add additional configuration. As an example, when the entitlements functionality was added to the services module, it linked to the standard case entity and functionality as a standard. Companies that had built their own case functionality had to either move to the standard case management functionality or configure a link to the entitlements.

A second example that I have come across before, which required configuration and was considered future proof was where a customer had several case types, each of which required a large amount of data capture. Instead of adding hundreds of fields to the case form, the case was simply used as the header record and a set of custom entities was created for each of the categories. The core case functionality, such as routing and email-to-case was used and the configuration flexibility of the platform was used to apply a huge level of personalisation from an incident management point of view.

In summary, part of future proofing your configuration is to bear in mind what Microsoft offer as out the box functionality, as well as what the licensing model allows you to do and not to do. Often, this involves an honest and transparent conversation with your customer, which will enable you the ability to educate them in what, is required to implement a robust, performant solution that is as future proof as you can make it. In the next post I will be talking about the Dynamics 365 roadmap and how you can prepare your solution for what’s coming.

D365 Custom Control Framework (CCF)

Microsoft Dynamics 365 Customer Engagement contains some impressive hidden gems in some really cool functionality that really promote a more immersive and interactive user experience. One such gem is the Custom Control Framework or CCF, which enables users the ability to place interactive controls over attributes. This video shows off some of the standard Custom Controls and how to add these to the new Unified User Interface (UUI) forms. It is believed that Microsoft will enable us the ability to create our own custom controls in future releases.

I’d also like to give a shout out to Amandip Dhillon for being a part of the testing of these controls! Awesome job 🙂

Microsoft Teams & Dynamics 365 Customer Engagement – And some other ideas :)

There are so many discussions about Microsoft Teams, how they are being used and how they will work with Dynamics 365 Customer Engagement. If you think about what exactly Microsoft Teams really does it starts to make perfect sense.

GOOGLE TOLD ME THIS: “Microsoft Teams is a chat-based collaboration tool that is part of the Office 365 suite of services. Teams enables local and remote co-workers to work together in real and near-real time.”

AWESOME, sounds very useful, but don’t we have Office 365 groups and Yammer for that? Recently a few enthusiasts and I (One of them being Ken) had a discussion about what works where and how. Rather interesting because the results were quite different. I’m also almost 108.65% certain that various people were asking the same thing when O365 groups were released. “Why can’t we just use Yammer?”….???? Well I’m DEFINITELY not answering that question with this blog post and if you need more information Please look HERE… A really rock solid article that talks about some of the stuff that’s going on. I will take it on properly at some point.

What I am going to answer is how deeply MS Teams works with Dynamics 365 Customer Engagement. At the moment my personal preference is towards MS Teams because I feel as if a lot of the existing O365 collaborative functionality is going to get absorbed by MS Teams. (Personal Opinion).

MS Teams actually has an existing “Integration” (More of a connection) with Dynamics 365 Customer Engagement and will let you surface certain information within a MS Team as well as track certain activities and changes. It’s really simple… Simply follow the instructions below and you are off to a good start:

Get a team up and running and create a channel of your preference.

Once you have done that… jump into the menu and hit connectors.

Filter the connectors menu and select Dynamics 365.

Select the correct instance of Dynamics 365 Customer Engagement. Looks like you need to select an instance within your O365 tenant.

From there select a record you would like to connect with. I only saw the ability to connect with “Accounts”, “Opportunities” and “Leads”. I have a workaround for other records explained at the end of the post for other record (Entity) types.

Once you’ve connected to a record (It seems as if you can only select one at a time), you will see the “1 Configured” link under the Configuration button.

If you select the link you only have the option to remove the record. Nothing else. (YET!!!)

After you have decided not to remove the D365 Customer Engagement records because of its vital importance to your team, you will see an update on your team channel with the records addition details.

I can go into D365 Customer Engagement, search for the record, make my updates and then these will be posted to the Team Channel.

Obvs’ you can then click through the Team link through to the Dynamics 365 instance record to review and interact with the record as required.

NOW… That’s the easy part done… Here’s the hard part. There is a lot I / we don’t know. In honesty format here we go:

  1. There are only certain entity types you can connect to out the box.
  2. There are only certain fields and activities that sync through to the Teams channel from the record.
  3. The information displayed is okay, but may not be enough to inform the right team members.

The solution:

I created an MS flow to interact with Teams and D365 Customer Engagement. It solves a lot of the problems that you would generally perceive with the MS Teams and D365 connector. IE… It doesn’t only look at Accounts, Leads and Opportunities. Because flows are pretty easy to create. I reckon this solves a lot of thaw current connector gaps.

Probably another blog post for another time…

If you are serious about using teams, in my opinion, that’s the right route! Have fun and shout if you need help!