In this article, we will review how to use query string parameters to embed Power BI Report details into the Project dashboard Embedded Content section. Also, we will review some common parameters that you can use to prefilter the report to show some specific data.
For an overview of embedding Power BI reports to the PPM Express Project dashboard, please refer to the How to embed Power BI Reports to Project dashboard article.
For a general overview of embedding content to PPM Express, please refer to the How to use Embedded Content section article.
Query String Parameters for Embedding Specific Report Details
By default, the embedded report will be fully added to the PPM Express Project section. However, suppose you need only one page of the report to be added or prefilter the report to show some specific data. In that case, you can add query string parameters to the initial embedded URL of the report.
We will review the process of embedding one report page and add the list of other available parameters that can be used in the same way below.
The basic syntax is relatively straightforward: start with the embedded report URL, add an ampersand (&) mark, add the syntax and the report ID.
For example, you need to add only one report page called Project Details to the Project section. Let's assume that the initial embedded URL (copied from the Embed Report -> Web Site Portal) is the following:
https://app.powerbi.com/reportEmbed?reportId=18a88e51-6f21-4b66-9a1e-06e45f00b025&autoAuth=true&ctid=970bb9f7-6d5a-4168-a244-6f0804ad9553
Add the &pageName= and the report page name and ID to this report's initial embedded URL.
Note that for older Power BI reports, the pageName
parameter includes the ReportSection
prefix (e.g., pageName=ReportSection12345
). In newer reports, this prefix is not used; simply copy the ID at the end of the URL (e.g., pageName=abc123
).
URL&pageName=ReportSectionID
As a result, the whole URL will be similar to this one but with your unique ID:
https://app.powerbi.com/reportEmbed?reportId=18a88e51-6f21-4b66-9a1e-06e45f00b025&autoAuth=true&ctid=970bb9f7-6d5a-4168-a244-6f0804ad9553&pageName=ReportSection021881af6ed238ee3814
For newer reports, the URL will be similar to this one:
https://app.powerbi.com/reportEmbed?reportId=18a88e51-6f21-4b66-9a1e-06e45f00b025&autoAuth=true&ctid=970bb9f7-6d5a-4168-a244-6f0804ad9553&pageName=021881af6ed238ee3814
The report page ID can be copied from the report URL.
Open PPM Express -> Embedded Content section -> ellipsis button -> Configure and paste this URL with the parameter to the External Content field.
Click Save, and the report page will be added to the Embedded Content section.
Common query string parameters
The query string parameters listed below are used the same way as we reviewed in the example of the specific report page parameter. To use these parameters, you need to add them to the initial embedded URL of this report (copied from the Embed Report -> Web Site Portal).
1. To show only a specific report or a report page (described above as an example).
&pageName=ReportSectionID
2. To filter the Report by Project
&filter=Projects/Id eq '{entityId}'
If a custom view is created with the Embedded Content section, it is possible to filter the report dynamically based on the current project (when working with the custom view). For this, add the following parameter:
- Copy the
&filter=Projects/Id eq '{entityId}'
parameter. - Combine this with the main report URL and the
pageName=ReportSectionID
orpageName=ID
parameter.
Full example URL with both parameters for older reports with RportSection in the URL:
https://app.powerbi.com/reportEmbed?reportId=c83fefc3-6840-487c-b195-c12fa1b49d14&autoAuth=true&ctid=970bb9f7-6d5a-4168-a244-6f0804ad9553&pageName=ReportSectiondf0b97e6cdb751619006&filter=Projects/Id eq '{entityId}'
Full example URL with both parameters for newer reports without RportSection in the URL:
https://app.powerbi.com/reportEmbed?reportId=c83fefc3-6840-487c-b195-c12fa1b49d14&autoAuth=true&ctid=970bb9f7-6d5a-4168-a244-6f0804ad9553&pageName=f0b97e6cdb751619006&filter=Projects/Id eq '{entityId}'
This method currently works only for Project entities (not Programs or Portfolios).
If you open a different project and select a custom view with the Embedded Content section, the report will update accordingly to reflect that project's data.
3. To hide the Navigation Content pane.
&navContentPaneEnabled=false
4. To hide the Filters pane.
&filterPaneEnabled=false
5. To enable the Action Bar (please note that some actions may not work in the embedded report version).
&actionBarEnabled=true
6. To apply filters to the report by any field and its values. A few filters may be applied.
&filter=Table/Field eq 'value'
E.g., to filter the report by Project ID to show data only for that Project (for default Project views with the Embedded Content section):
&filter=Projects/Id eq'IDvalue'
The example of the Power BI link with the added parameter:
https://app.powerbi.com/reportEmbed?reportId=18a88e51-6f21-4b66-9a1e-06e45f00b025&autoAuth=true&ctid=970bb9f7-6d5a-4168-a244-6f0804ad9553&pageName=ReportSectiondf0b97e6cdb751619006&filter=Projects/Id eq '3fdf68de-9bea-41f4-9cf0-35a275af63c6'
Adding a filter by a few field values and multiple fields is possible. Additionally, different operators besides eq (equals) may be used.
The mentioned query string parameters may be combined in the URL. For instance, the embed URL to the specific report page, with the filter by Project ID, hidden Filters, and Navigation Content, looks like:
https://app.powerbi.com/reportEmbed?reportId=500808f0-b83d-4c77-8398-06f0fc90f106&autoAuth=true&ctid=970bb9f7-6d5a-4168-a244-6f0804ad9553&pageName=ReportSectiondf0b97e6cdb751619006&navContentPaneEnabled=false
&filterPaneEnabled=false&filter=Projects/Id eq '077c873c-2746-4695-9253-db98ff1ea51e'
Please refer to the following article to learn more about query string parameters: Service URL filters.
If the URL parameters, names, or values contain spaces or special characters that require escape codes, they must be replaced before pasting the URL for embedding. To do this, open the URL in the browser so that it replaces the characters and spaces. Then, copy the ready-to-use URL from the browser address bar.