Hello, This question is about editing restric...

(Alper) #1

Hello, This question is about editing restrictions. I want user be able to edit/modify older records if they are created within last 30 days, the rest should be view/only. All the security etc filters are hiding the filtered content which I do not want. What’s the logical way to prevent editing old records? Also, obviously, there should be a time stamp, how it should be placed? Same row? Or in another table with ref? What might be the preferred way for this in a

multiuser / workbook_per_user environment ? Thanks.

(Aleksi Alkio) #2

You could use system generated EDIT action button’s condition rule for this purpose. You could type something like… DATE([DatetimeColumn])>TODAY()-30 or if you use Date for the timestamp, you can write it like [DateColumn]>TODAY()-30.

(Alper) #3

@Aleksi_Alkio Hi and thanks for replying, i have found a couple more places to set editing restrictions, one is the flask of Add/Edit/Delete/ReadOnly section of tables, other is editableif() column constraint. Along with edit action you mentioned above, which one you think works best for the purpose?

(Aleksi Alkio) #4

I didn’t meant none of those. I mean the the action button where you can see small box with pencil… when you edit the record.

(Steven Coile) #5
  1. If you want to control the ability to edit across an entire table, use the Are updates allowed property of the table’s definition in Data > Tables.

  2. If you want to control the ability to edit on a row-by-row basis, use the Only if this condition is true property of the table’s Edit action in Behavior > Actions.

  3. If you want to control the ability to edit on a column-by-column basis, use the Editable_If property of the column in Data > Columns.

You want (2).

(Alper) #6

+Steve Coile Thanks for clarification, now I understand where and when to use these restrictors. Yes I will follow no2. This information deserves finding it’s way to some place in the help pages I believe.