cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
haider96
Frequent Visitor

filter items in a list based on current user in multi-selection person column

Hi everyone,

 

seeking your support in my scenario, 

 

I have a gallery list from SharePoint, I want to filter the items based on the current logging-in user.

I made a Person column name (Employee) containing the users that I want to show that record, I made this in App onStart: 

Set(varUserEmail, User().Email);

in gallery items property:

Filter('Power List',Employee.Email = VarUserEmail)

 it works, but it does not work when I make the person column allow multi-selection.

I want to filter the items for multi-users.

Your support is much appreciated.

 

1 ACCEPTED SOLUTION

Accepted Solutions

need to flip it. varUserEmail in Employee.Email

 

View solution in original post

9 REPLIES 9
NandiniBhagya20
Solution Sage
Solution Sage

Instead of equals to sign (=), use in 

Filter('Power List', VarUserEmail in Employee.Email)

Did you like my post? Please give it a thumbs up! Did I resolve your issue? Please click Accept as Solution to close the topic and so other members of the community can find solutions more easily.

I did use in still items not showing up.

Using 'in' works as it should. Need to make sure your onStart is working and the values are there in the list. However, you will have delegation issues when using in as it's not delegable in SharePoint. So if you ever have more than 500 records (2000 with setting) then you may not get results. 

I did make sure of onStart is working and I have a few records less than 100 and the error shows up.Screenshot 2022-08-09 234203.png

need to flip it. varUserEmail in Employee.Email

 

But also if you get it work, you need to know that delegation will be an issue it that form and once you go over 500 (2k with setting upped) it will not return accurate results. If you know it'll never exceed that many, then you're good. 

Thank you so much.

it works, the delegation is not big deal for me.

Hi,

When I select a group email to show them the record like all staff should see that record, it's not works, it works only with  individual email.

 

Thanks in advance.

It won't do filter comparisons when using groups. If you only have a few groups, then you could add in some logic to allow everyone type groups. 

Something Like 

Filter('Power List', VarUserEmail in Employee.Email || "everyonegroup@domain.com" in Employee.Email)

But you can't drill into these groups for membership. You would have a build some kind of security model where you extract the groups using a connector and build a list for each then Look through your groups etc. But that is a very complex scenario to try and figure out and get working. 

Helpful resources

Announcements
Power Apps News & Annoucements carousel

Power Apps News & Announcements

Keep up to date with current events and community announcements in the Power Apps community.

Microsoft 365 Conference – December 6-8, 2022

Microsoft 365 Conference – December 6-8, 2022

Join us in Las Vegas to experience community, incredible learning opportunities, and connections that will help grow skills, know-how, and more.

Power Apps Community Blog Carousel

Power Apps Community Blog

Check out the latest Community Blog from the community!

Top Solution Authors
Top Kudoed Authors
Users online (3,155)