Forum Discussion
Render PowerBI report(PBIX) inside a visual
- 9 months ago
IMHO you should keep it easy with out of the box Power BI App + Audiences + Workspace Level Security
Create a power bi app with all the reports inside and 2 audiences:
- audience 1: see all reports- audience 2: see only finance report
the app can have RGB theme color and a logo
Workspace access
- add the SME users as contributor role in workspace so they can create reports and add them to the workspace (and to the app if you want)
- add the SME users to the audience 1 so they navigate the app and see all the reports
- add report consumers to the audience 1 and not to the workspace. they won't be able to create new reports just navigate what is exposed by the audience 1
- add finance consumers to the audience 2 and not to the workspace. they won't be able to create new reports just navigate what is exposed by the audience 2
Hi Gokul_PBI, could you provide some additional information on why you're trying to display a report inside a report? Depending on what exactly you're trying to achieve, there are different options that might work for your use case.
Unfortunately, you can't direclty embed a Power BI Report inside a Power BI Report Page through custom visuals.
Different options you could consider though are:
- Navigation buttons or links to navigate from one Report to another. You can link directly to specific report pages and pass filters through the URL if needed.
- Cross-report drillthrough. You can enable drillthrough filters on the target page, and users can right-click and follow through with the same filter context. https://learn.microsoft.com/en-us/power-bi/create-reports/desktop-drillthrough
- You can publish your reports through a Power BI App or, if your tenant supports it, an Org App. Both options give you a cleaner navigation structure without having to merge the reports themselves.
https://learn.microsoft.com/en-us/power-bi/consumer/end-user-apps
https://learn.microsoft.com/en-us/power-bi/consumer/org-app-items/org-app-items
I hope any of these options help with what you're trying to achieve!
Did this answer your question? If so, please consider marking it as the ‘Accepted Solution’ - it helps others with the same issue find the answer more easily.
- Gokul_PBI9 months agoRegular Visitor
Thanks KarinSzilagyi for your detailed response,
Here’s the scenario we are trying to address, which stems from some limitations we’ve encountered with PowerApps:
I need to provide access to a workspace for a group of users, where each user plays a different role within that group.
PowerApps initially seemed like the perfect solution, but there are certain limitations. For example:
- I cannot customize the left-side menu based on user profiles.
- A user with an SME role should see all reports in the workspace and also have a link to create new reports.
- A report consumer should only see the list of reports, without the option to create new ones.
- A finance team member should only see finance-related reports within the same workspace.
- I also want to apply a custom RGB theme color, which PowerApps does not currently support.
- There are other customizations I’d like to implement, but the flexibility to achieve them in PowerApps is limited.
As a result, I started exploring the report option, where I aim to build a report that mimics an app-like interface. The idea is:
- When I click a report link in one visual, the corresponding report should render on the right side within the same report.
- When I click “New Report,” I should see that option appear on the right as well.
Note: I am going to try org apps next week and not sure if that solve our problem.
- KarinSzilagyi9 months ago
Super User
Ok, that's a tricky one... I'm honestly not sure if it will work, but one thing you could try is:
1) Get the information regarding which reports and pages you have in your workspace via the Rest API: https://learn.microsoft.com/en-us/rest/api/power-bi/reports and create a table in your dataset that includes an overview of all Reports, Pages and the URLs to get to those reports/pages. Include this table in the datasets of all reports you're trying to display.
2) Set up RLS on the Report/URL Table to filter who can see which reports (e.g. via by following a specific naming schema to pre-categorize the reports).
3) Create a navigation panel through the HTML Content (or HTML Content Lite) visual. Render each Report/Page from your URL-table as a button. Since you can use custom CSS in the HTML Content Visual, you can style this navigation however you want dynamically.
I did a quick test and in theory it works, but the s....ad part is, that it will always open each navigation click in a new window. I don't believe there's a way to force it to open the report in the same window.
Alternatively I also tried pasting the iframe of each report into a table and displaying that. If you set your report to "Publish to Web (public)" this actually works and you get a fully clickable report inside the HTML Content visual, but I doubt that you would like to expose the underlying Semantic Models like that....- Gokul_PBI9 months agoRegular Visitor
You’re absolutely spot on—thank you so much for your answer!
I tried the same approach, but the challenge is rendering it in a visual, which isn’t working as expected. Additionally, we have RLS applied to every report, so Publish to Web (public) may not be a viable option for us.
I’m planning to try using organizational apps, though I’m not entirely sure if that will resolve the issue.
- R1k919 months ago
Super User
IMHO you should keep it easy with out of the box Power BI App + Audiences + Workspace Level Security
Create a power bi app with all the reports inside and 2 audiences:
- audience 1: see all reports- audience 2: see only finance report
the app can have RGB theme color and a logo
Workspace access
- add the SME users as contributor role in workspace so they can create reports and add them to the workspace (and to the app if you want)
- add the SME users to the audience 1 so they navigate the app and see all the reports
- add report consumers to the audience 1 and not to the workspace. they won't be able to create new reports just navigate what is exposed by the audience 1
- add finance consumers to the audience 2 and not to the workspace. they won't be able to create new reports just navigate what is exposed by the audience 2
- I cannot customize the left-side menu based on user profiles.