Hi all, I hope everything is going good
I have a form for tasks and inside it there is an inline form for adding new items. (see below image plz)
we will assign tasks to drivers, but I want to prevent a driver from updating any previous items in the above items inline form. a driver can only add new items but not editing old entries.
Is there any clue plz
Thanks
Solved! Go to Solution.
So.. as per your responses, the user should be able to edit his/her own items. But you also said.. "a driver can only add new items but not editing old entries.". I assume with this you mean other driver's items. If the Admin should be able to edit everyones Items, then you would need to add that condition to Edit action. Don't know your table structure, but lets assume you have "Users" table with roles. Then the formula would be..
OR(
USEREMAIL()=[EmailColumn],
LOOKUP(USEREMAIL(),users,ID,Role)="Admin"
)
If you don't have an "Users" table, then you could write it like..
IN(USEREMAIL(),LIST([EmailColumn])+LIST("adminA@domain.com","adminB@domain.com"))
Set the Child table ADDS_ONLY for drivers from table's definition. And rest are able as ADDS_AND_UPDATES.
Thank you @AleksiAlkio but this way if I make the child table as adds_only to all drivers then a driver will be able to edit their own record.
I want to allow driver to:
1- add new record
2- update their own record
3- see other drivers' records without updating.
Then you would need to hide the system generated edit action button if the record is not the driver's own. For example with USEREMAIL()=[Email]
In addition to Aleksi's answer, if only the last task needs to have edit rights, you can use MAXROW() in the action behavior field
Nothing solved
And what did you try?
For example if I have two users
1- Admin
2- user
Now If I hide system generated edit for user only, then admin will be able to edit the columns but user will not. Even If user is allowed to add new columns and once they save they will not be able to edit. Only admin can edit. This is not the solution I want.
Maxrow also not a good solution as only it shows last row.
So.. as per your responses, the user should be able to edit his/her own items. But you also said.. "a driver can only add new items but not editing old entries.". I assume with this you mean other driver's items. If the Admin should be able to edit everyones Items, then you would need to add that condition to Edit action. Don't know your table structure, but lets assume you have "Users" table with roles. Then the formula would be..
OR(
USEREMAIL()=[EmailColumn],
LOOKUP(USEREMAIL(),users,ID,Role)="Admin"
)
If you don't have an "Users" table, then you could write it like..
IN(USEREMAIL(),LIST([EmailColumn])+LIST("adminA@domain.com","adminB@domain.com"))
Hi, I do not have user table
I will use this
IN(USEREMAIL(),LIST([EmailColumn])+LIST("adminA@domain.com","adminB@domain.com"))
but I could not understand it the right way, how it can allow admin to edit everything and drivers their own
When the app user is the admin, the IN() formula gives the result as TRUE for all rows as it's not checking any rows to verify it. Meaning.. the result is like TRUE, TRUE etc. for all rows.
Sorry for bothering you
should I applied in in the action edit button directly or in the table (allowed edit section)
Let me break it down plz:
IN(USEREMAIL(),LIST([EmailColumn])+LIST("adminA@domain.com","adminB@domain.com"))
1- IN(USEREMAIL(),LIST([EmailColumn]) (is this part for admins who can edit all records)
2- LIST("adminA@domain.com","adminB@domain.com")) (and this for drivers)
#1 is for drivers and #2 for admins. And you should use it with the system generated "Edit" action as a condition.
I tested it and still driver can not edit his/her own record
The authentication is ON in your app? And the email column contains proper driver's email addresses?
@AleksiAlkio Yes
Please take a printscreen from your edit action definitions.
@AleksiAlkio kindly check
It sounds like your formula is just fine. Is the admin able to modify all "Order Details" records?
Yes admin can see all records and edit.
Driver can not see all records and can not edit any records including his/her one.
And the table permission is set like All access?
@AleksiAlkio Yes correct
I would say difficult to know the reason without seeing your app itself. Send me a private message.
sure ok
Thank you very much indeed, I am sorry for being late ๐
User | Count |
---|---|
16 | |
10 | |
10 | |
8 | |
3 |