Hey, trying to add a security filter so that ...

security
(Potentia Solar) #1

Hey, trying to add a security filter so that only the user can see a table if their name is one of the values in a column.

I tried this, but it does not work.

(CONTAINS([Assigned]) USERNAME())

any suggestions? the thing is that I want to be able to add multiple users to a row. ie. user1, user2

etc…

Thanks!

(Mark Pathfinder) #2

There is two solution; 1 you must create USER TABLE with NAME and to use LOOKUP with “if” rule OTHERWISE in your table you could us OR(USEREMAIL()[ASSIGNED], "2° USEREMAIL ETC,) but in this case you must to insert the 2° and the 3° in the formula

(Potentia Solar) #3

Thanks Mark. I have changed the column type to a Enumlist, and have it “Valid if” to another table with the list of technicians. Is there a way to add a security filter so only the User sees the rows which have his USERNAME in the column?

(Suvrutt Gurjar) #4

Hi @Potentia_Solar, Could you please mention what challenge you are facing with the security filter expression (CONTAINS([Assigned]) USERNAME()) ?

Generally this expression seems to be workable.

However, I believe

you may wish to evaluate use of USERNAME() in expression. It is recommended to use USEREMAIL() instead of USERNAME(), as some authentication providers may not return the USERNAME().

help.appsheet.com - USERNAME() USERNAME() help.appsheet.com

(Potentia Solar) #5

@Suvrutt_Gurjar thanks for the reply.

I get the error “CONTAINS function is used incorrectly”.

I use the USERNAME() function in other areas of the app with ease. the provider is Microsoft

(Potentia Solar) #6

@Suvrutt_Gurjar

Thanks. That worked!

(Suvrutt Gurjar) #7

Hi @Potentia_Solar,If you are using the same expression as you have given in this post in app,then I believe it has syntax errors.

Could you please try the following expression

CONTAINS([Assigned], USERNAME())

Presume [Assigned] is LIST or TEXT type column.