Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Earn the coveted Fabric Analytics Engineer certification. 100% off your exam for a limited time only!

Reply
Anonymous
Not applicable

PowerBI version control best practices, workspace permissions and branches of master.

Hi all,

 

I have developped a master finance PowerBI report for my company where we can view all the finances for each department's budget/actual expenses. Now working with the finance team we want to roll them out to each team filtered to each department (while the master copy will be accessed only by the finance department and will have a view of all departments). To do this I plan on just setting hard filters. However there are a number of best practice and maintenance questions that arise out of this piece of work that I would like to know about. I think there are 3 main points covered by this that I have questions about.

 

1.Dataset maintenance. – Proposed solution is  Dataflow

  • To make sure all the data is consolidated between separate reports I don't want to recreate datasets between reports. Instead I plan to make a centralised Dataflow which I will connect all the reports to. Question: Is this the best practice here?

 

 

2. Report maintenance - I was planning to make each filtered report a separate report for each deparment, however this creates lots of version control/extra maintenance and much more work (there are 10 departments). 

  • Question. How do you have the same reports with different filters on them showing different subsets of information or for different departments and minimise the version control between them. So, if 1 graph needs to be changed (how can you do it so that you only do it once as opposed to ten times). Is there a better practice here for PBI?
  • Question: Is there a way to make it the same report but different tabs for different teams? Or else branch off a tab off a master report and it will update when the master updates?

 

3. Dataset and Report permissions - we only want departments to have access to their own reports and data.

  • Question: Do we need to make a workspace for each team? Is access to reports at the workspace permissions level. Or can you make it at the report level or even a tab level?
  • Question: Can you connect to a dataflow from a different workspace?

 

 

 

9 REPLIES 9
lbendlin
Super User
Super User

1. best practice is to use shared Datasets, ideally Certified.

 

2. Certified Shared Datasets

 

3. Shared Datasets, RLS (if needed) and app access control. Yes, separate workspace/app per team (but they can all use the shared dataset)

 

yes, you can connect to dataflows from any dataset as long as the dataset developer has access to the dataflow.

 

BTW, your questions do not really cover version control.  That is a different topic. Look into Deployment Pipelines, ALM Toolkit, or a manual solution for git integration.

Anonymous
Not applicable

Okay you have answered the data questions. But in terms of version control and report maintenance I don't think you have covered this.

How would I avoid having 10 separate reports per teams and not having to download and edit the report when a visual needs editing. This is what I mean by version control: if I make a change to one report, I will have to download all other filtered versions of the same report and bring them up to the same version through manual edits, there does not seem to be a nice VCS solution here?

Or are you proposing never to fragment it into 10 reports via RLS?

What I am telling you is that the situation is much worse than you realize. Power BI is geared towards single developers. It has no mechanisms for collaborative development or business continuity planning. You have to create these processes yourself.

Anonymous
Not applicable

I guess I have to agree with you there, I am slowly coming around to the same conclusion. It seems from according to the PowerBI documentation here: https://docs.microsoft.com/en-us/power-bi/guidance/rls-guidance  , that under the section header"Avoid using RLS" that they weigh out the pros and cons of multiple datasets/workspaces vs RLS and in fact say to avoid using RLS too. Neither solution seems much better than the other.

The one thing we didn't talk about is UX.  RLS is poison for UX.  It has its applications for truly sensitive and compartmentalized information, but for the vast majority of use cases it is counterproductive. I have replaced RLS with default filters in most of my projects.  Our users are mature enough to decide if they want to focus on their specific data, or if they want to see the bigger picture. I don't need to nanny them.

Anonymous
Not applicable

Yes I know what you mean. But what would you do in the case where your users are the finance department who want to have the master version of the finance report and then they want you to distribute copies of the report with filters on it for the "Engineering", "Sales", "Innovation" teams but not allow these teams see each other's finances and budgets. This isn't a case where we are trying to nanny our stakeholders but rather it is a requirement that from the client that they don't want some users to see other users' reports.

You are right, it makes sense in a finance/compensation environment. Thankfully not something I have to deal with.

 

I would stil try to use different workspaces/apps rather than RLS.  One workspace for you to play with the data model, and one workspace each for the different departments to see "their"  data out of your shared dataset.

Anonymous
Not applicable

Just to update you, so that you get to learn something out of this. This documentation is the best solution we think will work: https://docs.microsoft.com/en-us/power-bi/collaborate-share/service-url-filters . We will embed these service urls in the team's spaces in dynamics.

We tried to use report url filters but found them to be very fragile, and ultimately not working in our environment (We mostly share app links, and are strongly discouraging developers from sharing report or dashboard links. Sharing links from workspaces is grounds for immediate and prolonged ridiculing). I'll look at them again, maybe their stability has improved.

Helpful resources

Announcements
April AMA free

Microsoft Fabric AMA Livestream

Join us Tuesday, April 09, 9:00 – 10:00 AM PST for a live, expert-led Q&A session on all things Microsoft Fabric!

March Fabric Community Update

Fabric Community Update - March 2024

Find out what's new and trending in the Fabric Community.

Top Solution Authors
Top Kudoed Authors