Power Platform Fundamentals

Ben Stegink


In this eBook, we will use the Power Platform Fundamentals exam (PL-900) as a guide for an overview of the Power Platform within the Microsoft 365 ecosystem. We will take a look at the platform as a whole, including Power Apps, Power Automate (formerly Flow), Power BI, and Power Virtual Agents.

This eBook is based around the Power Platform Fundamentals exam, PL-900. While you may not be thinking about taking PL-900, this eBook will give you a good foundation for the Power Platform as a whole, what’s involved in it, where to get started, and how everything works together.

Topics included are general administration, security, interactions between the apps, and how to get started using them. We will also look at some real-world business scenarios where these products might be used, especially with the modern desktop platform.

We will also discuss a new service that Microsoft recently introduced – Project Oakdale. It’s not covered in the Power Platform Fundamentals exam, due to its relative newness, but it is relevant to the Power Platform.

What is the Power Platform?

Power Platform has its roots in the Dynamics 365 stack rather than in the modern desktop Microsoft 365 space, which explains certain interesting differences around licensing and usage. Microsoft has taken pieces of Power Platform and slowly introduced them into the Microsoft 365 product suite.

Let’s look at the services in the Power Platform.

Power Apps

Power Apps is an application, form-based service within the Power Platform – available as a mobile, web-based and Teams application. You can build forms and add data into the Power Platform and into the different backend databases. You can view data and build a whole application for working with your data.

Power Automate

Power Automate used to be Microsoft Flow. You still build flows and you will see a lot of Flow terminology, but the service itself is Power Automate. As you can see in the screenshot, Power Automate builds out workflows and business processes.

Once you have entered data within Power Apps, you can use Power Automate to process the data, manipulate it in different branches, and add it to other systems.

Power BI

Power BI lets you build reports on your data and create charts and graphs so that you can drill into the details and create visualisations of data within the Power Platform. This screenshot shows you some of the reporting that you may want to do on your data.

Power Virtual Agents

The fourth pillar of the Power Platform is Power Virtual Agents – a bot service. You may have seen a bot type service on multiple websites where they ask, ‘How can I help you?’ or ‘Do you have questions?’ You type in a response, and then it responds with an answer or provides more information based on the dialogue you have in the chat interface.

Common Data Service (CDS)

Another key aspect of the Power Platform is the Common Data Service or, as it’s now known, Project Oakdale. This is a table database structure within the Power Platform that lets you can create databases and relational tables. You can tie all the Power Platform services together – with Project Oakdale being the under-the-covers database or data source that powers all the components.

Dataflex Pro is CDS. There was no functional change in terms of the product, it was simply a renaming of the Common Data Service. Dataflex has the same table data structure as in the Common Data Service. However, you will be sandboxed down or locked down to just using Dataflex within Teams. It gives you the ability to add Power

Platform components, such as Power Apps and Power Automate, to your Microsoft Teams environment.

Within Teams, you can create a Dataflex database or tables, which can only be used within Power Apps, Power Automate, and Power BI as a part of Teams. All these services can be used externally to Teams as well, whether it’s embedded into SharePoint site, a standalone mobile app, embedded reports, even on a public-facing website, but the Dataflex database can only be used when you are building applications, flows, and Power BI dashboards within Microsoft Teams specifically.

If you’re familiar with the modern desktop side of things, you’ll know that when you create a team, it creates an Office 365 group and a bunch of other services. Similarly, with Dataflex, you also get a new environment within the Power Platform. As a Teams admin, you need to understand how Dataflex works when it comes to Teams and how, as you create teams, it is going to provide other services within the Power Platform.

Dynamics 365 isn’t generally considered part of the Power Platform, but it is driven by the Common Data Service (or Dataflex Pro) and, as a result, it is associated with the Power Platform. If you’re thinking about this from the perspective of the PL-900 exam, you get a lot of Dynamics 365 questions because of the very fact that the Common Data Service is a part of the underlying data source for the Power Platform.

You don’t need to use the Common Data Service, Dataflex or Dataflex Pro with the Power Platform. You can use three of the four services. In the screenshot, Power BI, Power Apps and Power Automate are being used without Dataflex or the Common Data Service.

You can tie it into an Azure SQL database, a SharePoint list, Twitter, your Office 365 mailbox, Excel spreadsheets, and OneDrive. All these other services can also serve as data sources for a Power BI report or for Power Apps to read and write data to, for Power Automate to run business processes against the data. Power Virtual Agents does require Dataflex or the Common Data Service to create the database that’s used with its chatbot functionality.

So, Power Virtual Agents currently requires the Common Data Service. Once all the Dataflex service changes are rolled out, you should be able to create Power Virtual Agents, or at least a chatbot type functionality similar to Power Virtual Agents, using just Dataflex, as long as that stays within Microsoft Teams.

What to know – Power Apps

Empower Citizen Developers

Low Code

Power Apps is geared toward empowering citizen developers or power users. In other words, it’s people that aren’t developers, but who want to go out and build stuff. They’re not going to be able to write JavaScript, C#, or Node, but they could stumble their way through Power Apps. Power Apps is not a no-code solution. In fact, it’s a low-code to no-code solution, where you must have some basic understanding of variables, creating some basic IF functions (think of Excel type functions). It’s not full-blown development when it comes to classes and data types (although there are some data type aspects of Power Apps), but it requires some basic coding experience.

Mobile Apps

Power Apps is a great mobile application development system. It works great on a phone and an iPad. However, to get these applications on your phone or your iPad, you must install the Power Apps application from the app store. Once you log into it, you

can pin apps from Power Apps to your screen on your Android or iPhone device, so that you can go directly to the mobile app. It doesn’t allow you to publish it as a traditional app where users could go to the app store, search for it, and find it. But if you have people out in the field on phones, iPads, or their personal devices, and they need to work with data, Power Apps is a great place to create mobile applications so that they can work with data, add data, take pictures on their mobile devices, and save them back to the backend data source, without going through whole mobile application development.

Web-based Apps

You can also create these as web-based apps (for example, apps that are embedded in a SharePoint site) that people access via a URL or via Teams (as you can now pin apps as tabs within teams).

Web Portal

The web portal is a relatively new service where you can build a public-facing website in Power Apps that users can log into and access their data using CDS/Dataflex Pro.

Act on your data

Create, Read, Update, Delete

Within the portal, Power Apps acts on your data in a database or within a SharePoint list (Create, Read, Update, Delete).

Integrate with Power Automate

It integrates with Power Automate so, as you’re entering data, or if people are saving data and you have to perform a certain process when that data is updated (maybe approval is needed before somebody can add or delete data), you can use Power Automate to run business processes on top of Power Apps.

What to know – Power Automate

Formerly Microsoft Flow

Workflows still called “Flows”

Power Automate was formerly Microsoft Flow. Workflows are still called flows and it still provide the automation of your business processes.

Automation of Business Processes

In the screenshot, the system is requesting manager approval for a selected file. The file needs to be approved by a manager before it gets emailed off, before people are alerted to it, or before it’s published as an official document.

You could automate the approval process for when a new file is uploaded to a SharePoint site in several different ways.

Instant/Manually Triggered

These are business processes or flows that are triggered as soon as a user does something, whether they push a button in Power Automate, or if they have a file selected in SharePoint and choose to execute a particular business process in Power Automate. There are relatively few triggers that start these instant flows, but there are a couple of them. One of them that does get a little confusing is flows that are triggered based on an HTTP request or a webhook, where the HTTP call instantly triggers the business process.


Automated flows are flows that pull or wait for a certain event to occur and, once that event occurs, they go out and run. Because they’re polling or waiting for an event to occur, they don’t necessarily run instantaneously. Based on what level of flow you’re licensed for these could take as long as 15 minutes to trigger. Most of them happen sooner than that, within a couple of minutes or even a few seconds, but they can take

10–15 minutes to pick up the change and trigger. Examples of this include when you are mentioned in a tweet on Twitter or a tweet has a particular hashtag in it, when a file is uploaded to SharePoint or when a row in a database is changed. These are the automated type of triggers where they start once one of the other events happens.

What causes that event to happen isn’t important. It’s just watching the underlying data source for a particular event to occur, and then going out and running the process.


Scheduled triggers are just like they sound. You create a schedule, they run on a regular basis, whether that’s every few minutes, every few hours, every few weeks, certain days. Once scheduled, they run on a regular basis, whether there’s something to do or not.

Business Process

Business process flows are a special type of flow-related specifically to CDS. The interface for these business process flows doesn’t even look the same as those of the other flows. Instead, they guide you through a strict, well-defined process based 100% on CDS entities. So, you can’t build business process flows based on a SQL database or a SharePoint list. They are tied to CDS and are used a lot within Dynamics 365 for walking you through a well-defined sales process or onboarding new employees, for example.

These business processes are embedded within 365 and based on the entities and tables within the Common Data Service. Frankly, you could have a whole book or more just on business process flows, CDS, and Dynamics 365, but it’s important to at least be aware of business process flows and what they are.

What to know – Power BI

Data Visualisation

Reports and Dashboard

The two main components of Power BI are reports and dashboards, representing the data visualisation layer, but you can also use Power BI to analyse data, and this can be done in a few different ways.

Analyze Data

Natural Language Queries

Think of these as exactly that – questions you would ask in natural language: “What were my sales for the last quarter?” or “What were Joe’s average sales by month over the last year?” or “Who was my top salesman last quarter?”. You can use Power BI to include natural language queries as a component of your report (see screenshot).

Where it says, “Ask a question about your data”, you literally go in and type a question about your data as you would speak it every day. Power BI can process that question and return new information about your data based on that question.

Drilldown and relationships

In the screenshot below, you can see charts and graphs on this report. You can create these, drill down, and filter through your data.

You can dive deeper into your data and start building relationships between the different tables or your different data sources, or drill down further into a report to understand what’s going on under the covers.

Integrate with Azure

Another option is to integrate Power BI with Azure. You can use things like HDInsight, or Machine Learning in Azure, Stream Analytics, or Azure SQL. These different Azure services are meant to work with big data or with data stores. You can take advantage of them to build reports in Power BI, or to analyse data before you take it into Power BI.

So, there are lots of other options with Power BI, outside of the Power Platform, to tie this into Azure and look at your data.

Power BI Desktop

Power BI Desktop is the Windows 10 desktop application that you install from the Microsoft Store. This is where you build and create reports and connect to and massage your data as you bring it into the reports. The whole creation process takes place within Power BI Desktop – and then you publish it to the Power BI service, that’s a part of the Power Platform.

Power BI Service

Power BI is a little bit different from the other Power Platform services. Power Virtual Agents, Power Apps, and Power Automate all work within environments. They all take advantage of the Common Data Service, and a lot of their core functionality was derived from Dynamics 365. Whereas, Power BI, where it comes to the service, doesn’t take any of that into account. It has workspaces instead of environments, it doesn’t have any of the shared data connections that Power Automate and Power Apps have, and it isn’t included in Dataflex/Dataflex Pro when it comes to Teams. Power BI Standard, Power BI

Pro or Power BI Premium are the Power BI services to which the reports you build in Power BI Desktop will get published.

Standard is a limited free version of the service, but it allows you to publish desktop reports to Office 365 or Microsoft 365 for you to use. Once you expand out to the Pro version, you get some advanced functionality, particularly around sharing reports with other people, being able to view embedded reports within a SharePoint site. Power BI Premium is a premium service based on taking Power BI to the next level, whether it’s unlimited access to viewing published reports or shared reports, or it’s giving your environment additional capacity to be able to process reports faster.

What to know – Power Virtual Agents


No Code

Power Virtual Agents lets you create chatbots, and it really is no code. Unlike Power Apps, where you needed to understand some basic development programming concepts, Power Virtual Agents is a no-code chatbot. You build it out, much like you would a workflow. It’s like Power Automate in that you just go in and start defining questions and answers.

Eliminate the gap between SME and Dev

The concept of Power Virtual Agents is to eliminate the gap between subject matter experts and developers. Typically, with chatbots, developers had to build everything, including figuring out how to process the natural language queries and how to respond properly, whereas Power Virtual Agents lets power users develop chatbots themselves using their subject matter expert skills within the company. It’s the people who understand the customer service questions they get who can develop a quality chatbot

without having to have any back and forth between subject matter experts and developers.

Take actions based on conversations

The chatbots take actions based on conversations and it’s not necessarily just about having a conversation and answering questions.

Integrates with CDS

The bot can look up information in databases and update databases.

Call Flows

The bot can run flows within Power Automate based on the answer to a question or based on somebody asking to talk to a person. If a customer says, “This doesn’t answer my question – have somebody call me”, the bot may shoot off an email to your customer service department to take action, or it may update your sales database, based on what people are asking questions about.

So, it’s not just a pure question and answer type interface, but as these conversations are happening within the bot, it takes tangible action based on the conversations.

What to know – Data Connections

Dynamics 365 and the Common Data Service

Dynamics 365 and the Common Data Service are one and the same, but they do have different connections. Some Dynamics 365 services have their own connections within the Power Platform to work with data in Dynamics 365. Other Dynamics 365 interactions may occur within the Common Data Service or certain things like AI Builder. You connect to the Common Data Service directly with some of those, so there’s a little bit of overlap. Some of the Dynamics 365 connectors are being deprecated in favour of going directly to the Common Data Service. As Dataflex evolves, a lot of those connections are going to turn into Dataflex or Dataflex Pro connections instead of the Common Data Service.


One of the advantages of the Common Data Service is you get a lot of the compliance that you may need. In terms of Health Insurance Portability and Accountability Act (HIPAA) compliance or data loss prevention within the Power Platform, leveraging the Common Data Service allows all that data to remain within the Power Platform.

Power Platform – Common, Shred Data Source

The Common Data Service is the common shared data source across the entire Power Platform, and it excels in terms of compliance.

Within the Common Data Service are the Common Data Model – a specification for how your data should be, so that you know the data can be used across the entire Power Platform and Dynamics 365 suite.

External Data Sources

Integrate with third-party services

There are also external data connections that can be very powerful when it comes to integrating with third-party data, pulling in information about Twitter and feeding into Dynamics 365, feeding data out to Facebook, working with some of the other task apps or, as you can see in the screenshot, RSS feeds, sending different notifications, and even tying into Google services such as Google Calendar.

There are a lot of third-party services that you can tie into to build out integrations between other products that you may use in your company to help automate some of the work.

Send and Receive Data

Sending data, receiving data – you have both options as you leverage different data connections within the Power Platform.


Get Started with the Power Platform Apps

One thing about Power Platform that you will quickly find out is that there are a plethora of admin centers.

admin.powerplatform.microsoft.com is the admin centre for the Power Platform as a whole. It redirects to admin.powerplatform.microsoft.com/environments when you first launch it.

As Dataflex comes out, there will be a new environment for every team you can create. This is tied to how the Common Data Service works – in that you can only have one database within your Common Data Service per environment. So, if you consider different teams and teams’ data, and have to maintain the security of that data between different teams, you don’t want all your teams going to a single environment, or to a single database. The only way to separate that out is by the environment.

Within the Power Platform today, you can click on New to create a new environment, choose the type, such as Sandbox, Trial or Production, and select a region.

You also have the option to create a database for the environment. This is the Common Data Service that apps can use to store your data. If you choose ‘Yes’ and set up a name, you get the option to start defining the database: URL, Language, Currency.

If you want to deploy sample apps and data and then restrict it to certain security groups, as it becomes Dataflex and ties into Teams, it will be restricted based on Office 365 group membership. You go ahead and click ‘Save’, and it creates it.

Regarding capacity, by default, you don’t get much of it if you’re on the modern desktop. If you’re licensing Power Apps and Flow at advanced levels, you’ll get the

additional capacity to create all those environments. It’s going to be interesting as Dataflex rolls out to see how this gets handled with different environments.

Also contained within these environments are your Power Apps and Power Automate apps and flows. If we look at our other admin centers, it’s showing Dynamics and Power BI.

Another thing that comes into play with these environments is your Flow and Power Automate services. While these aren’t typically admin centers there is some admin type work that comes into Power Automate and Flow.

In the Power Automate environment, you can see some flows in My flows and Team flows.

In the top right-hand corner, you can see there are different environments. If you click here, it will show you the same environments that you have in your Power Platform admin center.

Click on Data and Connections to see all the connections within this environment.

If you go to Power Apps, select the same environment and click on Data and Connections, you will see the same list of connections.

Microsoft has combined admin centers for Power Platform, Power Automate and Power Apps. If you click on Settings and then Admin center, you will be redirected back to admin.powerplatform.microsoft.com/environments.

You start to see how Power Platform, Power Automate and Power Apps are all tied together into a single admin center. You can go in and look at analytics here for your Power Apps or Power Automate resources, and see capacity settings around data storage, Dynamics 365 apps, portals.

You can also see your data policies. We talked earlier about having certain Data Loss Prevention (DLP) policies in place so that you can make sure you control your data and keep it within applications that adhere to your specific needs, whether that be HIPAA, Personally Identifiable Information (PII) or other sensitive information.

One thing you will notice, you don’t have Power BI here. You still have a couple of other admin centers where you go out to Dynamics 365. Because Power Platform was built on the Dynamics 365 side of things, Dynamics 365 instances map to those environments.

With CDS databases, Dynamics 365 settings, and securing Dynamics 365, that’s where you start seeing the integration from Dynamics 365. But then you also have Power BI that jumps you completely out of the Power Platform into your Power BI admin portal where you manage users, auditing, tenant settings, Power BI’s own capacity settings, and workspaces.

Workspaces in Power BI are like environments within Power Apps and Power Automate, but they don’t share anything so, in terms of connections that you create in Power BI, there is no concept of shared connections between Power Apps, Power Automate and Power BI. If you’re going to create a Power App in Power Automate that works with Azure SQL, for instance, you just need a single connection to your Azure SQL database. You can use that single connection in Power Automate, and you can use it within Power Apps to interact with the data and Azure SQL.

However, when it’s time to build a report that analyses the data in the Azure SQL database, you must create a brand-new connection for Power BI. You can’t leverage the same connection that you had in Power Apps and Power Automate.

AI Builder is another service that will help you process data within Power Apps and Power Automate – submitting text to do sentiment analysis, submitting images to do image detection. There are a lot of cool things you can do with AI Builder such as character recognition, image recognition, processing forms and pulling metadata out of forms.

Power Virtual Agent hasn’t been integrated into any of the admin centers. You can sign into powerva.microsoft.com and this is where you can build out all those chatbots.

Power Virtual Agents starts at $500 per month, so for companies that are building a lot of bots, it’s inexpensive for a bot service. This is where you manage your Power Virtual Agents, where you can customise your greeting with the chat, build out the workflow around what’s going to take place within your Power Virtual Agents. You can enter trigger phrases for the greeting responses. You can include questions, set conditions based on the response, show messages, call an action (which is where you can tie this to Power Automate), and launch a flow from it. You can perform authentication so that if this is a client of yours, and they are looking to get specific information related to them, you can make sure they authenticate and you can pull that information right from your data service. Power Virtual Agents ties into CDS, so that, under Entities, you can see the different types of objects within your Common Data Service database.

Power Virtual Agents stands on its own as well with some different options in Settings.


The real value of the Power Platform is in leveraging different services and functionality across your products. It’s more than just connections, it’s the value that you bring to those different connections. Power Platform gets tied into Dynamics 365 – if you have data in CDS or Dynamics 365, you can pull it into Microsoft 365 to enable users to use applications and mobile devices and enhance the data that people back in the office are using.

There’s a lot of value across the entire Power Platform service. Whether it’s using Power Apps for working with your data or Power Automate for automating different processes, and then tying that all into third-party services, the Power Platform is a lot more than just connections – it’s building those business solutions for your end-users.

0000-00-00 00:00:00

Leave a Reply

Your email address will not be published. Required fields are marked

{"email":"Email address invalid","url":"Website address invalid","required":"Required field missing"}