Power BI is turning 10! Tune in for a special live episode on July 24 with behind-the-scenes stories, product evolution highlights, and a sneak peek at what’s in store for the future.
Save the dateEnhance your career with this limited time 50% discount on Fabric and Power BI exams. Ends August 31st. Request your voucher.
I'm having some trouble with creating an RLS Role for managing which department a user may view employees from.
I have a table of departments built like paths, IE:
Dep1/
Dep1/Site1
Dep1/Site1/Team1
Dep1/Site1/Team2
Dep1/Site2
Dep1/Site2/Team3
Dep1/Site2/Team4
Each row has a manager, which matches ids in my usertable. For a manager to be able to access departments below them I create a calculated column in the departments table so that Column = Manager & ParentManager & GrandParentManager.
So my role filter is: (OrganizationalEntity is department and Solution is my aggregated column)
VAR USERID = CALCULATE( FIRSTNONBLANK( SystemUser[systemuserid], 1), FILTER( ALL( SystemUser ), SystemUser[Domain Name] = USERPRINCIPALNAME() ) ) RETURN IF( IFERROR(SEARCH(USERID, OrganizationalEntity[Solution]), -1) > -1, TRUE, FALSE )
But this simply leaves me with all departments with a nonblank "Solution" column.
If I instead create a calculated table, use the same definition for USERID but swap userprincipalname() for my email, like this:
TestTable = VAR USERID = CALCULATE( FIRSTNONBLANK( SystemUser[systemuserid]; 1); FILTER( ALL( SystemUser ); SystemUser[Domain Name] = "MYEMAIL@DOMAIN.COM" ) ) RETURN CALCULATETABLE( OrganizationalEntity; FILTER( OrganizationalEntity; IF( IFERROR(SEARCH(USERID; OrganizationalEntity[Solution]); -1) > -1; TRUE; FALSE ) ) )
This generates a table with expected results.
Is this a bug? Or am I just missing something?
EDIT: I want to add that I have tried simply OrganizationalEntity[Manager] = USERID, and that works as expected in RLS, so USERID seems to be correct.
Check out the July 2025 Power BI update to learn about new features.
User | Count |
---|---|
24 | |
10 | |
6 | |
6 | |
6 |
User | Count |
---|---|
29 | |
11 | |
11 | |
10 | |
6 |