Home » How to Embed Power BI In Dynamics 365

How to Embed Power BI In Dynamics 365

by Tony Pimpo
8 minutes read

One of the most significant advantages of Microsoft Dynamics 365 is the strong integration capabilities it has with other products across the Microsoft ecosystem. 

Power BI is a crucial part of this ecosystem. Power BI offers the ability to bring in data and insights from disparate sources. It visualizes data, turning it into insights that can are used personally or shared across an organization. 

You can consume these visualizations (and the underlying data) via three main methods: the Power BI service (https://app.powerbi.com), Power BI Desktop (a native Windows application), and Power BI mobile apps. These are available on Android, iOS, and Windows platforms. 

That list left out one principal place: Dynamics 365. That’s the reason you’re reading this article. You may be asking, “How do I embed Power BI into Dynamics 365?” That’s a good question. We’ll focus on the two main approaches to doing that below. 

Embedding Power BI in a Dynamics 365 Personal Dashboard 

If you are a CRM power user (or maybe you’re taking your first stab at being one), this will be a cinch. Out of the box, you can embed Power BI into Dynamics 365 personal dashboards. There are just a few prerequisites that you’ll need to take care of first. 

Requirements 

  • You must have a Power BI account 
  • Power BI visualizations must be enabled at an organizational level. To do this, go to Settings > Administration > System Settings > Reporting > Allow Power BI visualization embedding. Administrator-level access is required. 
  • Once this is complete, you can embed Power BI on your dashboard. 

Creating a Power BI Dashboard 

  1. In Dynamics 365, navigate to your Dashboards area. 
  2. Click New and then select Power BI Dashboard 

From here, you can choose the workspace and the specific dashboard under the workspace that you want to embed. For use on mobile devices, be sure to select Enable for mobile. 

Now, you can fill your blank dashboard with available tiles. To add tiles, follow the steps below. 

  1. Choose the dashboard area where you want the tile to appear. 
  2. Select the ellipses in the toolbar and click Power BI Tile. 
  3. Select the desired workspace and tile. 
  4. Click Save. 

Embedding Power BI in a Dynamics 365 Entity Form 

We just learned how to embed tiles inside of a Power BI dashboard in Dynamics 365. But what about including a chart on a Dynamics 365 entity form, such as the Account entity? A tool called Power BI Embedder enables you to do just that.   

Installing XrmToolbox and the Power BI Embedder 

XrmToolBox is a third-party solution that contains a host of tools that provide value as a power user in your organization.  To use Power BI Embedder, we’ll need to install XrmToolBox on our desktop. 

  1. Navigate to www.xrmtoolbox.com to download the latest version of the application. 
  2. Once installed, you’ll need to connect to your organization. 
  3. To add the embedding tool, click Configuration and then select Tool Library. 
  4. Type in Power BI Embedder. 
  5. Select the checkbox next to the row and click Install 
  6. Closeout of the Tool Library. You’ll now see PowerBI Embedder listed in the Tools tab. 

Adding Power BI to an entity form 

With Power BI Embedder installed, you can begin the process of adding your published report to an entity form. It must be published online to complete these steps. 

  1. Open Power BI Embedder 
  2. Under Target, select the target entity. 
  3. Select the form, tab, and section. If you enter a value in Section Name, that will replace the current value you see in the Section drop-down. 
  4. In the drop-down next to Connect to Power BI, set the Embed Power BI Setting to On. 
  5. Go to https://app.powerbi.com. 
  6. Navigate to the Reports tab and open the report that you want to embed. The URL will look like this: https://app.powerbi.com/groups/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/reports/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx 
  7. Copy the value between /groups/ and /reports/ into the Group ID field of Power BI Embedder: 
  8. https://app.powerbi.com/groups/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/reports/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx 
  9. Copy the value following /reports/ into the Group ID field: https://app.powerbi.com/groups/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/reports/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx 
  10. Click Publish Report.   

Enabling a Context-Aware Power BI Report with Filtering 

Publishing a report to your entity using the above steps may suit your needs. However, a report with the steps above is not context-aware – it does not consider any parameters from the viewing record. The good thing is that we can enable contextual filtering with just three pieces of information – the PBI Table, PBI Column, and CDS Field. For this example, we want to see Cases associated with an Account. 

  1. Open your Power BI Report in edit mode. You must be an owner to do this. You can edit your Power BI report either in the browser or in Power BI Desktop. 
  2. On the right-hand side of the editor, you will see the Fields heading. Each field will be grouped by a table heading. You’ll need this value to populate PBI Table. For this example, it will be Cases. 
  3. The second field, PBI Column, is the field that you will use for filtering. As we want to see Cases associated with an account, we need to grab the schema for the Account Name field, which is parentcustomerid. 
  4. The third drop-down, CDS Field, is selected from the record. The field you choose for this drop-down is the matching value that determines which case displays. Select accountid. 
  5. Click Publish Report. 

There are a host of possibilities you, or your team can accomplish with Power BI and Dynamics 365. If you need assistance with developing solutions, contact our team at Dynamics Consultants Group. We have a team of experts willing to assist you and help your business succeed.

You are on the blog right now. If you are interested in our consulting services, visit our website to learn more!