Skip to main content

Configure Embed Power BI Control

Requirements

Azure AD Application

To use the Embed Power BI control, CXO requires an Azure AD application. This requires an Azure account and subscription.

  1. Log into the Azure Portal.

  2. Create Azure AD Application on the Microsoft Entra ID service.

  3. Go to App registrations, and click New registration.

  4. Fill in the following details:

  • Name

  • Supported account types: Accounts in any organizational directory (Any Microsoft Entra ID tenant - Multitenant)

  • Redirect URI: Platform: Public client/native | https://app.powerbi.com/embedsetup/SignInRedirect

  1. Go to Certificates & secrets

  2. Add a new client secret, give it a name and an expiration date.

Important: Copy the secret and keep it in a safe place, you won’t be able to see its value anymore on Azure Portal.

On Authentication confirm that the Redirect URI given in the App registration is present and add the following:

  • urn:ietf:wg:oauth:2.0:oob

  1. Click on Advanced settings, enable Allow public client flows

On the API permissions

  • Add a permission

  • Choose Power BI Service

  • Pick the permissions in the following categories: App, Capacity, Content, Dashboard, Dataflow, Dataset, Gateway, Report, StorageAccount, Tenant, Workspace (this list might be too extensive, remove the permissions that feel unnecessary)

Once everything is configured go to the Azure AD App Overview and note the following:

  • Directory (tenant) ID

  • Application (client) ID

  • Client secret that was configured

Power BI

Ensure the following actions on Power BI are performed:

  1. Select Manage access on the workspace:

  1. Click Add people or groups.

  2. Enter the name of the Azure AD app created in the first section:

  3. Configure capacity for the workspace: https://learn.microsoft.com/en-us/power-bi/developer/embedded/move-to-production. This step might be optional depending on the use case. If not configured, the embedded reports will show like this in CXO:

The rendering of the report is done by a shared resource, which might deliver unreliable performances. For a non-production environment this step may be skipped.

Acquire a license for Power BI Embedding

To use the Power BI Embedded functionality in CXO, a separate license is required.

In the configurator, under the License Key tab, you can check if you have the right license, by confirming Embed Power BI is Yes.

If this is not mentioned in your license, please contact us.

CXO Configurator

If your product is licensed as above, then you will see it reflected under the Maintenance tab with a link to Power BI Settings.

When clicked a form is presented to be filled in for the information that was collected at the end of the first section:

  • Azure Tenant Id: The Directory (tenant) ID of the first section

  • Azure Application Id: The Application (client) ID of the first section

  • Azure Client Secret: The Client secret that was configured

CXO Designer

In the CXO Designer, edit a free-format report using the Power BI control:

Add a control to the report, save and exit the layout mode. You will be able to configure the following settings:

  • Workspace Id: The identifier of the Workspace configured in the second section

  • Report Id: The identifier of a report added to the workspace

  • Dataset Id (optional): The identifier of the dataset. Optional, if not provided CXO will determine the dataset.

The values to configure for these two fields can be found in Power BI, by looking in the browser address bar. Open your report in Power BI:

  • Roles (optional): Enter one or more RLS roles configured in the report. Use a semicolon (;) to separate multiple roles. If configured, the report data can be filtered based on the logged in user. The roles are defined in the Power BI desktop app:

    In the example shown above, we are editing the role UserFilter. For the username() function, CXO will send the email address of the logged in user. The user's email address is the one being used for RLS.

    This information can be used to identify the user and filter the data shown in the Power BI report. In this example, we use the email address to filter the data for the user greta.vontrapp@comma.de to the data of Germany and for the user juan.sanchez@comma.mx to the data of Mexico. You can create groups of users that have access to certain reports and filter the data based on the right DAX formula.

    The Role field is optional, if not provided the Power BI data won’t be filtered based on a role.

  • Filter (optional): this field is used to filter the data in the report, based on the CXO POV filter. The filters are explained in Interaction Between CXO and Power BI Filters. It’s optional, if not entered, the data is presented without filter.

    For more information, see Match EPM and Power BI Members.

Was this article helpful?

We're sorry to hear that.