Power BI is turning 10! Tune in for a special live episode on July 24 with behind-the-scenes stories, product evolution highlights, and a sneak peek at what’s in store for the future.
Save the dateJoin us for an expert-led overview of the tools and concepts you'll need to become a Certified Power BI Data Analyst and pass exam PL-300. Register now.
Hi all,
I have embedded reports and paginated reports in our website. For the regular reports I set up a bookmarking system using the powerbi-client javascript library to capture and apply bookmarks. I am trying to do something similar for paginated reports. I understand that currently paginated reports are much more limited than regular reports. There is no bookmarking functionality or client-side events for embedded paginated reports, so I am trying to find another way.
I have a paginated report with about 10 drop downs and one radio button. I want to give users the ability to save their selections and reapply them. I cannot get a users selected parameters with javascript because the parameters are inside the embedded iframe and same-origin policy forbids it.
Does anyone have a solution for this? Is this feature on the roadmap to make paginated reports more feature complete like regular reports?
Is there a way to send parameter selections with the API request to get the embedded report? I am still looking for a way to do this. If I can do that, then I can probably hide all of the report parameters, and create a UI for the users to select parameters so that my application has control of all the parameters. Of course, I would rather find a simpler solution, but this is my best idea at the moment.
Thanks for your time!
EDIT: It may be helpful to know this is an embed for your customers (app owns data) scenario using an A sku and a Service Principal.
Solved! Go to Solution.
EDIT: It appears the preferred way to pass these parameters is via the parameterValues property of IPaginatedReportLoadConfiguration. However, it seems IPaginatedReportLoadConfiguration is not importable from powerbi-client...
https://learn.microsoft.com/en-us/javascript/api/overview/powerbi/embed-paginated-report
EDIT2: IPaginatedReportLoadConfiguration is importable from powerbi-client.models.
private _paginatedReportConfig: models.IPaginatedReportLoadConfiguration = {
type: 'report',
id: '',
embedUrl: undefined,
tokenType: models.TokenType.Embed,
accessToken: '',
parameterValues: [
{ name: 'StartDate', value: '05/01/2023' },
{ name: 'EndDate', value: '05/22/2023' },
{ name: 'OtherParam', value: '86' },
],
settings: {
commands: {
parameterPanel: {
enabled: this.showParams,
},
},
},
};
ORIGINAL:
https://learn.microsoft.com/en-us/power-bi/paginated-reports/parameters/pass-report-parameter-url
I found one solution, passing parameters as query parameters in the EmbedUrl. I need to confirm that their is a way to disable the parameters section of the paginated report. I think it can be done by hiding all the params in Report Builder or maybe with a client-side option.
Below is some basic code appending 3 parameters to the EmbedUrl.
var paginatedReport = pbiClient.Reports.GetReportInGroup(workspaceId, paginatedReportId);
paginatedReport.EmbedUrl += "&rp:StartDate=05%2F01%2F2023";
paginatedReport.EmbedUrl += "&rp:EndDate=05%2F22%2F2023";
paginatedReport.EmbedUrl += "&rp:OtherParameter=99";
var tokenRequest = new GenerateTokenRequestV2(
reports: new List<GenerateTokenRequestV2Report>() { new GenerateTokenRequestV2Report(paginatedReportId) },
datasets: !string.IsNullOrEmpty(paginatedReport.DatasetId) ? new List<GenerateTokenRequestV2Dataset> { new GenerateTokenRequestV2Dataset(paginatedReport.DatasetId) } : null,
targetWorkspaces: new List<GenerateTokenRequestV2TargetWorkspace>() { new GenerateTokenRequestV2TargetWorkspace(workspaceId) },
identities: effectiveIdentities
);
pbiClient.EmbedToken.GenerateToken(tokenRequest);
EDIT: It appears the preferred way to pass these parameters is via the parameterValues property of IPaginatedReportLoadConfiguration. However, it seems IPaginatedReportLoadConfiguration is not importable from powerbi-client...
https://learn.microsoft.com/en-us/javascript/api/overview/powerbi/embed-paginated-report
EDIT2: IPaginatedReportLoadConfiguration is importable from powerbi-client.models.
private _paginatedReportConfig: models.IPaginatedReportLoadConfiguration = {
type: 'report',
id: '',
embedUrl: undefined,
tokenType: models.TokenType.Embed,
accessToken: '',
parameterValues: [
{ name: 'StartDate', value: '05/01/2023' },
{ name: 'EndDate', value: '05/22/2023' },
{ name: 'OtherParam', value: '86' },
],
settings: {
commands: {
parameterPanel: {
enabled: this.showParams,
},
},
},
};
ORIGINAL:
https://learn.microsoft.com/en-us/power-bi/paginated-reports/parameters/pass-report-parameter-url
I found one solution, passing parameters as query parameters in the EmbedUrl. I need to confirm that their is a way to disable the parameters section of the paginated report. I think it can be done by hiding all the params in Report Builder or maybe with a client-side option.
Below is some basic code appending 3 parameters to the EmbedUrl.
var paginatedReport = pbiClient.Reports.GetReportInGroup(workspaceId, paginatedReportId);
paginatedReport.EmbedUrl += "&rp:StartDate=05%2F01%2F2023";
paginatedReport.EmbedUrl += "&rp:EndDate=05%2F22%2F2023";
paginatedReport.EmbedUrl += "&rp:OtherParameter=99";
var tokenRequest = new GenerateTokenRequestV2(
reports: new List<GenerateTokenRequestV2Report>() { new GenerateTokenRequestV2Report(paginatedReportId) },
datasets: !string.IsNullOrEmpty(paginatedReport.DatasetId) ? new List<GenerateTokenRequestV2Dataset> { new GenerateTokenRequestV2Dataset(paginatedReport.DatasetId) } : null,
targetWorkspaces: new List<GenerateTokenRequestV2TargetWorkspace>() { new GenerateTokenRequestV2TargetWorkspace(workspaceId) },
identities: effectiveIdentities
);
pbiClient.EmbedToken.GenerateToken(tokenRequest);
Check out the July 2025 Power BI update to learn about new features.
This is your chance to engage directly with the engineering team behind Fabric and Power BI. Share your experiences and shape the future.
User | Count |
---|---|
7 | |
7 | |
3 | |
2 | |
2 |
User | Count |
---|---|
6 | |
5 | |
4 | |
4 | |
4 |