@MultiTech_Visions
Matt, maybe you can help with this?
I want to allow clients to make ALL_CHANGES to their Work Orders while in “Pending” [Status]. I want them to be able to update the [Status] to “Working”, but then be restricted to READ_ONLY. Once we update the Work Orders[Status] to “Completed”, I want them to be able to do what they have to do and only be able to edit the Work Orders[Status] to “Archived”.
I also want to allow my staff to be able to update the Work Orders[Status] at every stage, in case a client wants us to handle all that. I want my staff to be able to update only columns specific to our tasks such as quantities and methods, but not any of the input from the client such as SKU’s, titles, Work Order Numbers, Purchase Order Numbers, … etc.
Right now, I have the following in the Editable_If expression for column Status:
OR(TEXT(Users[User_Role])=“Admin”,TEXT(Users[User_Role])=“Manager”,TEXT(Users[User_Role])=“Supervisor”)
This is pretty close, allowing only my staff to make changes to the status, but I would like to make it more complex as detailed above.
Help?
1 Like
@rmsmeltz
- The table update-permissions formula space doesn’t have the granularity to reach the record level;
- for that you need to implement things on the action-side of things (add/edit/delete actions).
You’re on the right track with the Editable If formula on the columns you want to restrict, just need to tweak the formula you’re using.

A few examples from the video
INDEX(Current_User[User_Role], 1)
in(INDEX(Current_User[User_Role], 1), list("Admin", "Dev", "User"))
SWITCH(INDEX(Current_User[User_Role], 1),
"Admin", "ALL_CHANGES",
"User", "UPDATES_ONLY",
"READ_ONLY")
AND(
IN(INDEX(Current_User[User_Role], 1), LIST("Admin", "Dev", "User")),
[Milestone_Status] <> "Complete"
)
3 Likes
Here’s a great breakdown for why your original formula wouldn’t have worked:
[Referencing a Column value in a Table, versus referencing ALL Column values in the entire Table](https://community.appsheet.com/t/referencing-a-column-value-in-a-table-versus-referencing-all-column-values-in-the-entire-table/50771) Tips & Tricks ?
Having answered this question about 1 million times now, I guess I should make a tips-and-tricks post about it. Expressions of the form Table[Column] return a List type data value that contains the values in Column for ALL records in the entire Table. Most likely, If I’ve referred you to this post, the answer to your question is simply to change it to just: [Column] One of the most common places I’ve seen new app builders use this, is within SELECT() expression, like: SELECT( Table[Col…
2 Likes