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

Be one of the first to start using Fabric Databases. View on-demand sessions with database experts and the Microsoft product team to learn just how easy it is to get started. Watch now

Reply
BW40
Helper I
Helper I

How to get one table to automatically filter another

I am trying to build a report where when users log in, their email filters their view automatically so their only see their or their staff's data.

 

I used PRINCIPALUSERNAME( ) as a measure to automatically show the email of whomever is viewing the report. I then used that as a filter for a second visual with all of the company's emails so it only shows the user's email. The second table works so that table pulls up only the viewer's email.

 

User = USERPRINCIPALNAME()
User Filter = IF(SELECTEDVALUE(Staff_Member[Staff_eMail_Address])=USERPRINCIPALNAME(),1,0)
 
Next, I have a third table that has a list of all of area managers and the local managers. When I click one of the names on the managers' table it filters a fourth table to only show their clients served.
 
**How can I get the second table (emails) to autmatically fitler my third (mangers') table so it filters the fourth table and they only see their stafff's clients?**
 
An example management structure looks like this where I only want regional manager A to log in and see managers a - g and their clients 1 - 7 while manager a would log in and only see client #1.
 
 BW40_0-1700172521712.png

 

Is there an easier way to do this? The goal is to let whoever logs in only see their clients or the clients of those they supervise.

3 REPLIES 3
BW40
Helper I
Helper I

@amitchandak the problem is the email addresses come from a secondary table which has not been allowing me to filter the main table.  I am trying to find an alternative method because the traditional RLS method was not affecting the main table.

BW40
Helper I
Helper I

@amitchandak I started with using dynamic RLS but when that did not work I looked into alternative routes to get the desired results. RLS roles are not filtering the data based on user (my user name sees everything and when I view as another user the filter does not affect the table).
The closest I can get is using IF(SELECTEDVALUE(Staff_Member[Staff_eMail_Address])=USERPRINCIPALNAME(),1,0) as a filter for the intermeding table but I cannot get the second table to filter the overall client count table. 

amitchandak
Super User
Super User

@BW40 , We usually use RLS, we join table with table haviing access and email and then use code of first measure

example

[email]=USERPRINCIPALNAME()
Power BI- Row Level Security(RLS): Handle ALL, UserPrincipalName: https://youtu.be/KVLEnIUo4pc

 

For Hierarchy

 

https://radacad.com/dynamic-row-level-security-with-organizational-hierarchy-power-bi

Join us as experts from around the world come together to shape the future of data and AI!
At the Microsoft Analytics Community Conference, global leaders and influential voices are stepping up to share their knowledge and help you master the latest in Microsoft Fabric, Copilot, and Purview.
️ November 12th-14th, 2024
 Online Event
Register Here

Helpful resources

Announcements
Las Vegas 2025

Join us at the Microsoft Fabric Community Conference

March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount!

Dec Fabric Community Survey

We want your feedback!

Your insights matter. That’s why we created a quick survey to learn about your experience finding answers to technical questions.

ArunFabCon

Microsoft Fabric Community Conference 2025

Arun Ulag shares exciting details about the Microsoft Fabric Conference 2025, which will be held in Las Vegas, NV.

December 2024

A Year in Review - December 2024

Find out what content was popular in the Fabric community during 2024.