web
You’re offline. This is a read only version of the page.
close
Skip to main content

Notifications

Announcements

Community site session details

Community site session details

Session Id :
Power Platform Community / Forums / Power Apps / Restrict users to see ...
Power Apps
Unanswered

Restrict users to see specific records

(0) ShareShare
ReportReport
Posted on by 567

Hi All, 

 

I'm trying to improve an application I made that hides certain records from staff if there user email is not hard coded into the app - I have been using [on visible] varUserEmail = ect. 

 

I have created a SP list which will contain the users email / their name and a selection of YES / NO choice options which acts as their level of access, such as Generic User, Manager, MST and so on.  I would like to be able to use the choice options to be able to restrict what records they can see. 

2021-09-11 20_38_34-Window.png

 

I have also created another SP List which will contain the records I want to restrict to certain users - It follows a similar selection of YES / NO choice fields

2021-09-11 20_42_20-Window.png

The test record above, will be available to Generic Users, Managers, SPUC and MST. If the user above in the first Image logs into the app they will be able to see this record. 

 

How would I accomplish something like that?

 

Thanks 

Categories:
I have the same question (0)
  • WarrenBelz Profile Picture
    153,084 Most Valuable Professional on at

    Hi @AdamH ,

    I do not fully understand the connection between the lists, but this code will return true or false on the first list as to whether the user is a PPE user. How do you connect the user to the second list?

    Set(gblUser,User());
    Set(
     gblPPEUser,
     LookUp(
     NCUserCodes,
     'User Email' = gblUser.Email
     ).'PPE User'
    )

     

    Please click Accept as solution if my post helped you solve your issue. This will help others find it more readily. It also closes the item. If the content was useful in other ways, please consider giving it Thumbs Up.

  • AdamH Profile Picture
    567 on at

    hi @WarrenBelz 

    My thinking was....

     

    EXAMPLE:

    USER 1 has PPE selected to YES which is contained in [SP LIST A]

    RECORD A - Has PPE & MANAGER selected to YES in [SP LIST B]

    RECORD B - Has MANAGER selected to YES in [SP LIST B]

     

    If USER 1 logs in, they will see RECORD A but not RECORD B because record B does not have PPE selected

     

    I haven't got the SP lists linked yet but that was my thinking. I was looking to see when a user logs in, if their record has any of the choice fields selected to YES, then that would filter all the data records that had the same choice field selected to YES.

     

    What do you think?

  • WarrenBelz Profile Picture
    153,084 Most Valuable Professional on at

    Hi @AdamH ,

    Either a lot of hard coding as you cannot refer to field names dynamically or you (do as I do) simply have one list with the various authorities per user.

     

    Please click Accept as solution if my post helped you solve your issue. This will help others find it more readily. It also closes the item. If the content was useful in other ways, please consider giving it Thumbs Up.

  • AdamH Profile Picture
    567 on at

    Hi @WarrenBelz 

     

    Could you share an example of this?

  • WarrenBelz Profile Picture
    153,084 Most Valuable Professional on at

    @AdamH ,

    Do you mean the one list with all details? I personally would not attempt the hard-coding path (my brain hurts thinking about it) when you can simply make a list with all the information you need.

  • v-jefferni Profile Picture
    on at

    Hi @AdamH ,

     

    The point of designing tables as data source for Power Apps is avoid to set specific information as column names, because column names could not be retrieved into Power Apps to use elsewhere.

     

    In this case if possible, you may edit both lists that adding a Choices column which allows multiple selections and include all those access levels. You will be able to get specific user's access level via:

    LookUp(List, 'User Email' = User().Email).'Access Level'

    This is a table and you could also create a collection OnStart of the App to use it repeatedly:

    ClearCollect(colLvl, LookUp(List, 'User Email' = User().Email).'Access Level')

     

    Now you can filter the codes list by its own Access Level column selections:

    ForAll(colLvl, Filter(Codes, Value in 'AccessLevel'))

     

    You could refer to below thread to know more about the filter method:

    Solved: Filter multiple selection choice column - Power Platform Community (microsoft.com)

     

    Hope this helps.

     

    Best regards,

    Community Support Team _ Jeffer Ni
    If this post helps, then please consider Accept it as the solution to help the other members find it.

     

  • AdamH Profile Picture
    567 on at

    @WarrenBelz 

     

    I took a few days out to have a think and just confirm how I would like it to work and decided maybe the best way to try and put it across was to sketch and example in excel 

    2021-09-15 20_48_03-Window.png

     

     

  • AdamH Profile Picture
    567 on at

    Hi @v-jefferni 

     

    I'm going to look at your suggestion and have a go - see what I can do

  • WarrenBelz Profile Picture
    153,084 Most Valuable Professional on at

    @AdamH ,

    This is syntax guidance only based on your Excel example, but this will return true or false as to whether the user has access to the record

    With(
     {
     wAccess:
     LookUp(
     SPList2,
     UserEmail=User().Email
     )
     },
     UpdateContext(
     {
     varAccess:
     (ThisItem.L1 && wAccess.L1) ||
     (ThisItem.L2 && wAccess.L2) ||
     (ThisItem.L3 && wAccess.L3) ||
     (ThisItem.L4 && wAccess.L4)
     }
     )
    )

     

    Please click Accept as solution if my post helped you solve your issue. This will help others find it more readily. It also closes the item. If the content was useful in other ways, please consider giving it Thumbs Up.

  • AdamH Profile Picture
    567 on at

    @WarrenBelz 

     

    How would I put your example to the test in a gallery? 

     

Under review

Thank you for your reply! To ensure a great experience for everyone, your content is awaiting approval by our Community Managers. Please check back later.

Helpful resources

Quick Links

Forum hierarchy changes are complete!

In our never-ending quest to improve we are simplifying the forum hierarchy…

Ajay Kumar Gannamaneni – Community Spotlight

We are honored to recognize Ajay Kumar Gannamaneni as our Community Spotlight for December…

Leaderboard > Power Apps

#1
WarrenBelz Profile Picture

WarrenBelz 739 Most Valuable Professional

#2
Michael E. Gernaey Profile Picture

Michael E. Gernaey 343 Super User 2025 Season 2

#3
Power Platform 1919 Profile Picture

Power Platform 1919 268

Last 30 days Overall leaderboard