SOLVED

Limiting Choices in a Person Field in PowerApps

Iron Contributor

I am trying to create a PowerApp that includes a Person field. I would like to limit the choice of people to a subset of all our users. When the person using the app chooses a user, I would like for it to show the person's name and picture.  So far in my attempts, I either get no suggestions as the user starts typing a name, or they see everyone in the O365.

So

1) What is the best way to define this subset? A SharePoint list with a person field? A SharePoint site security group?

2) How do I tie this subset to a combo box so that only these users are available for choosing.

 

Thanks.

 

 

6 Replies
best response confirmed by cprothero (Iron Contributor)
Solution

The easiest way, if your PowerApp is using a SharePoint list, is to create a person field in the list then limit that view to just a SharePoint group.  You can then define your users in that group.  

 

 Capture.PNG

 

Hope this helps.

Can't believe I didn't think to try that. Thanks a bunch, it worked!

Fantastic.  Glad I could help!

 

Hi Timothy,

 

I created a column as a person and set that to choose users from a "sharepoint group". However in powerAPPS, I don't see it under drop down and the only way is that I need to search for those users.

My question is that, can we restrict users to 3-4 users in a drop down way? My client don't want the column to be as a search function, rather they want people picker as a drop down and with limited number of users only. So that they can pick users out of those 4 members. 

I tried several ways but there is no luck as of now. Your solution works to restrict users but not in a drop down way(like choice column). Any suggestions please? 

You could populate a collection in PowerApps with users in a SharePoint Group that you get from a Flow call, I haven't tried this but it would work like this.
Create a Flow from PowerApps and add a Send SharePoint HTTP request to the site with the group name or ID and select the Title and Email /_api/web/sitegroups/getbyname('[group Name')/users?$select=Title,Email. Then call the Flow when your app starts to populate the collection and then use that in your drop down items. If you are then updating SharePoint, you have to create the Claims definition using the email address, there are lots of articles on updating person fields in SharePoint

Thanks for your suggestion Alan. I am new to PowerApps and Flow and it's bit tricky for me to understand this logic.  Is it possible for you to share steps in detail? Sorry for asking this. 

1 best response

Accepted Solutions
best response confirmed by cprothero (Iron Contributor)
Solution

The easiest way, if your PowerApp is using a SharePoint list, is to create a person field in the list then limit that view to just a SharePoint group.  You can then define your users in that group.  

 

 Capture.PNG

 

Hope this helps.

View solution in original post