Description
The IsRecordEditable event occurs after the AfterTableInit event. Use this event to implement custom edit permissions.
This event is executed once for each record on the List page as well as on the Edit page. This event is also called before the record is deleted.
Syntax
public XVar IsRecordEditable(dynamic values, dynamic isEditable)
Arguments
values
an array of values to be written to the database. To access a specific field value, use values["FieldName"].
Note: Field names are case-sensitive. If the field name is PlayerId, you should use values["PlayerId"]. Note that values["playerid"] or values["PlayerID"] will not work.
Note: If the field was assigned an alias in the SQL query, then the values array will get the alias instead of the field name from the database.
E.g., if you have an SQL query SELECT salesrep_id AS Inv_Salesrep ..., you should use values["Inv_Salesrep"].
isEditable
1 if record is editable, 0 if not editable
Return value
True - the record is editable.
False - the record is not editable.
Applies to pages
List, Edit.
Example 1
Disable editing of data in a certain table on weekends:
if (DateTime.Now.DayOfWeek == DayOfWeek.Saturday || DateTime.Now.DayOfWeek == DayOfWeek.Sunday)
return false;
else
return true;
Example 2
Enable editing of only the records with odd IDs (1,3,5 ...):
if (values["ID"].ToInt() % 2 == 1)
return false;
else
return true;
See also:
•Event: After table initialized