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
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.
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 agoSuper User
Publish to web is never a solution 😊