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
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....
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 😊