Multiple apps vs security filters vs other?

We currently have 11 apps - all use the same data set - apps are identical except for the filter. See sample pic. Each evacuation center has a diff app filtered for that location.

My question is - is there a better/easier way to do this? We want the users assigned to a specific location to only see what is filtered for that location but can this be done through app vs 11?

This would increase the number of users in one app significantly as all 11 sites would now be in one. Does that slow performance? All are using the same database so potentially performance would be slow regardless.

Is there a way to have one app that a user can login to , select their location and then have all views filtered for them?

Any expert guidance would be appreciated.2X_7_7db3da0d22980f54d8ab653cab19e3be4a55147c.jpeg

0 4 709
4 REPLIES 4

I have read this article https://help.appsheet.com/en/articles/954497-security-filters-the-essentials - my one concern would be the number of tables/views needed in one app to redirect the users based on their login to filter properly.

Is there a way to have one view that the user can select location and the data filters for them vs having to build views for each location that the security filters uses.

Not sure if that makes sense.

Right here I can tell you this is a pain of a setup; 11 apps, all identical except for one thing… what happens when you need to make 1 change in the app?

1 edit now becomes 11!

I’ve done that before, we quickly switched to using a security filter.


What I’ve done for situations like this is to create a Users table, which contains at least the following:

  • Email the user uses to log in
  • Authorized facility

(I also include things like: a name, icon/image, their role (admin, user, dev, etc.))
From here, you need a way to call the information about the current user:

  • You could create a slice (Current_User) with a condition of (USEREMAIL() = [User_Login_Email])
  • You could call the user record using LOOKUP()
  • You could create a USERSETTING that’s a ref to the users table with an initial value looking up the users record

All of these create an easy way for you to pull the [Authorized_Facilites] of the user - you then use this in your security filters.

I tried to look for a sample app I might have made to show this, but nothing I have is this fancy - and I’m not sure if there’s anything in the AppSheet sample app library showing this either.

You are 1000000% correct - pain. Especially when you factor in that is 11 for production, another 11 for dev and then a set for training.

I definitely want to revamp this for very reason you said.

If I create a user table that include their assigned location and then each row in the main table also includes that location - would the security filter just show them everything for their assigned location? Is that the idea?

I do have another set of apps for a different audience but unfortunately each one is very customized to their function, even though they use the same data, so I may be stuck with individual apps for that group.

Exactly.

Even for your training apps, you could specify a location for training data (that’s what we’ve done, called it “Something Training”).

In in regards to the customizability of an app; just about everything in the appsheet app can be conditionally shown, controlled, etc.

I once had the idea of a training app, a main work app, then an admin app; but just like your situation they were all essentially the same, only different workflows for each user group.

So the ultimate solution was to build all the workflows into the same app, then apply conditions based on the user role to determine which should be shown/allowed.

In the app I’m talking about, I’ve got two completely different user flows - COMPLETELY different, but since everything is only shown when it’s supposed to be everything works as it should.

Top Labels in this Space