On the fly User Selectable Views by Role

I am new to AppSheet. I am not a programmer.

I am looking to build an app for a new non-profit organization.

This organization will help people in need, by visiting their home.

I will have Staff Team Members, Volunteers and Clients. One Staff member may be a system administrator, as well as a Team member assigned to various tasks involving the organization. This same team member might also be a Volunteer to visit clients and possibly be a Volunteer Manager. Meaning having his own client tasks as well as managing other volunteers and their assigned clients.

Is there a way for this multi-user to have a dropdown list to allow them to chose which view they would like to see? This would allow them to see only the Clients to which they are assigned when viewing as a Volunteer. Then switch their selection to Team Member and View the organization tasks to which they are assigned. Then switch their selection to Administrator to perform jobs other Team members are not allowed to perform. (Like make a team member active or inactive, etc.

Hope this makes sense,

Yes this is quite basic. But you would need a app with a list of users (with user email) and their role. Then you can filter different slices and views based on that. The app can LOOKUP() the USEREMAIL() and filter..

1 Like

Thanks,

I will work from that information and see if I can accomplish this. The user will exist in two tables ( Assuming the user is a Team Member (Team Table), and Volunteer (Volunteer Table). As a Team Member the user might be a system administrator and a Team Member with tasks. As a Volunteer the user might be an On-Site Manager with tasks.. I am hoping to allow this user with many roles to switch between views/roles to reduce the clutter. So as an On-Site Manager the user is viewing his projects. Then switch view to Team Member and see only his Team/Organizational Tasks etc.

Yes. The table with users (Name and email) should then also have colums for different user access. E.g. “Access level” (maybe a number 1-3), “Role” (Site manager, Team member, Admin, etc…), or other credentials.

In a security filter, slice or view, you can then set filters like:

ANY(SELECT(UserTable[Access Level], USEREMAIL() = [Email])) < 3 (Gives access to every user with access level 1 or 2. Not 3)

or

ANY(SELECT(UserTable[Role], USEREMAIL() = [Email])) <> “Team member” (Gives access to every one but “Team member”. Not “Team member”)

1 Like

Thanks for more details. That will be a big help to me. I will attempt to implement in the next week or two. I am hoping this will create a dropdown list or button list that the user with multiple roles will be able switch between views. So, as an administrator he will see all. Then select his roll as an on-site manager and see only the jobs he is responsible to perform. Or as a Organization Team member, see his calendar of upcoming meetings and tasks.

1 Like