My client has recently decided to expand their business to a second country. The data loaded into PBI is retrieved from a single data warehouse that will contain data for both countries and can be filtered using a Company field. Let's say the field is populated with US and CA.
I enabled RLS roles (US Only and CA Only) from within the desktop. The report is published to two different workspaces, and each workspace has people added to the appropriate roles so if they enter that workspace report they can see that country's information. Some users are added to both roles.
Everything was working fine except for one thing... the intranet web portal that also displays the report using an iframe (embed code from the PBI web app) stopped working. No surprise because I added the RLS which deactivated the Publish to Web embed code. My mission now is do the following:
- Have a single version of the report, if possible. It is too difficult to make small changes like moving visuals around and making the changes identical in a second report.
- Avoid using Azure because my client does not want to encounter additional expense. They are already on the Pro plan for all who have access to the report.
- The intranet requires the user to log in, and their credentials could be passed to PBI. It looks like we can use REST APIs.
I found this page thanks to Guy in a Cube that outlines how to embed a report into a web page using REST APIs: https://powerbi.microsoft.com/en-us/documentation/powerbi-developer-integrate-report/
Is this the simplest way to do it? Are there any other videos/blogs that give a step by step on how to accomplish?
Are there other methods to consider? For instance, I could (not that I want to) duplicate my pbix then modify the SQL statements in the second version to pull in the other country, but that means I’m stuck doing that each time I publish a new version of the report. It seems like 15 minutes of wasted time.
Thanks for your ideas.