The most exciting piece in the Microsoft eco system right now must be Power Platform. My Microsoft journey started in Modern Work but being able to connect to data sources and automate actions was always a bit challenging and not always reliable. When Power Platform came along Microsoft promised that it would be the universal glue that connected and automated all systems. My initial thought was “good luck with that” since I never thought Microsoft would be able to standardize all their tools and services so they could all communicate. This time they were persistent even if they haven´t reached the goal line just yet.
Before we get started you need to know that Microsoft provides built in integrations between Microsoft Teams and Dynamics 365 (D365) that adds D365 functionality to Teams and vice-versa. In this piece I want to fokus on the abilities that Power Platform adds to the equation.
The birth of Dynamics 365 and model-driven apps
In 2016 after several iterations, a working version of Dynamics 365 Customer Engagement (D365 CE) was released as a cloud service. The technology that it was built on was later named Power Apps, and the service used for data storage eventually got the name Common Data Service (or CDS). This was the first step in creating a common list of data entities that could be used between applications. Each product version of D365 added a new set of data to the CDS (D365 Sales, Service, Field Service and Marketing).
So, time to start connecting things? Well, there is just one but… D365 is built using the model-driven Power app technology. The list of data entities and how they relate is described in a model (known as the Common Data Model) and that is the “manual” for how to use Common Data Service in your environment. In practice this means that you can only connect information easily between systems that use the same CDS. (And no, even though they have the same name, CDS in D365 Finance and Operations uses a different set of data.)
Canvas apps and Dataverse
To reach Microsofts´ goal of Power Platform as “the universal glue” between systems, it had to be easier to build apps and integrate between systems and the whole Power Platform concept had to be more understandable. At this stage Canvas Power apps were introduced. It doesn´t require an underlying model, instead you can start to create your app on “a canvas” in the Power Apps editor and use any type of underlying data source – An Excel file, a database, or a SharePoint list! Wait what, are we in Microsoft 365 now? Exactly! This is where things are starting to make sense. There is even an option to create a canvas Power app from within a SharePoint list.
To make CDS more consumer friendly Microsoft renamed CDS to Dataverse and later released Dataverse for Teams to get people to try out a lightweight version of Dataverse within the boundaries of Teams.
Dataverse for Teams can be used as a data source for single Teams apps in a team. It’s a convenient way to create tailored apps for a specific business need. A Dataverse for Teams data source can (of course) be upgraded to a full-blown Dataverse.
Getting Microsoft 365 information into Dynamics 365 and vice-versa
To get data from Microsoft 365 (M365) into Dynamics 365 you also use Dataverse. There is a Microsoft supported integration for document management using SharePoint but there is no built-in connection for bringing other types of data into D365. You need to use custom code to integrate the information from M365 to Dataverse but once there it´s accessible in D365.
To go the other way – Presenting Dynamics 365 information in Microsoft 365, we need to create a canvas-driven Power App and use Tables from Dataverse as the data source. This way we can retrieve for instance Accounts and Contacts and present the information on a SharePoint intranet page.
Important: Displaying Dynamics 365 information in Microsoft 365 requires that you are properly licensed. Either you have a Dynamics 365 Power App License as part of your regular D365 license or you need to purchase additional Power Apps licenses. For detailed information on what you can do with each license I recommend Matt Burrs’ excellent Power Platform license matrix posted on LinkedIn (https://www.linkedin.com/posts/mb365_the-ultimate-power-platform-licensing-matrix-activity-6802728216097370112-oNtM/).
What is Power Platform?
In this article I have mixed and matched technologies to try to give a general overview but now it´s time to explain what Power Platform really is. Power Platform has four main parts and several supporting services:
Power BI – The most commonly known family member. Power BI is used to visualize information in different ways. It can be used to easily connect to one or more data sources and then present reports and dashboards that can be accessed from different devices. The information is presented based on your access rights to the underlying data.
Power Apps – The overall name used for all apps, services, connectors and the underlying data platform. Three different types of apps can be created using Power Apps – Canvas, Model-driven and Portal apps. “Power Apps Studio” is used to create canvas apps for any device and doesn´t require any connection to Dataverse. “App designer” is used to create model-driven apps and requires a connection to the Dataverse platform. “Power Apps portals Studio” is used to create external facing portals like customer and partner portals. Power Apps Component framework can be used to create code that can be executed inside an app (this is the most common way developers interact with Power Platform).
Power Automate – The “workflow engine” in the stack. You use Power Automate to visually create workflows that fires of different kinds of actions depending on what needs to happen. Power Automate uses “connectors” for receiving and sending information and triggers to and from other systems. There are already around 400 connectors created and you can build your own if a pre-built one isn´t available. The catch with Power Automate is that some of the connectors are free but to connect to the cool services a premium connector is often required. A premium connector requires an additional license. Microsoft 365 and Dynamics 365 licenses include a special Power Automate (and Power Apps) license that can be used as long as you are using information within Microsoft 365 and Dynamics 365.
Power Virtual Agent – The youngest member of the family. Power Virtual Agent (PVA) is a toolset to build your own chatbots. It´s very convenient for things like creating an automated Q&A or some other type of bot. The thing to remember is that Power Virtual Agent comes in two flavors – The full-blown version that require an additional license and the more light-weight version Power Virtual Agent for Teams that is free to use internally if you have a Microsoft 365 license. PVA for Teams uses Dataverse for Teams to store its content. Dataverse for Teams has a size limit of 2 Gb that you need to remember but then again it´s “free”. Power Virtual Agent can also use data connectors but the “for Teams” version only supports standard connectors.
Supporting services – The main services that supports Power Platform are:
- Data connectors
Used to receive and send information and triggers to and from other systems (Standard connectors are free to use, premium connectors require additional licensing)
- Power Portals
External facing portal functionality to display and interact with Power Platform content (requires additional licensing)
- AI Builder
AI Builder is a point-and-click solution that allow you to add AI functionality to Power Apps and Power Automate. It also contains pre-built AI models and functionality for common business scenarios. This service can also be used for adding AI to created bots (requires additional licensing)
The information storage used by model-driven Power Apps including Dynamics 365
Microsoft Power Platform
Connecting the dots
There you have it – All the different shapes that Microsoft has created in their platform suites Microsoft 365 and Dynamics 365 and how Power Platform can be used to connect the dots between them. Time to start connecting!
Stefan Hult is a senior business analyst and digital workplace advisor with experiences in Microsoft 365, Dynamics 365 Customer Experience and Power Platform.