Please enable JavaScript to view this site.

Navigation: Advanced topics > Events > Table events

Is Record Editable

Scroll Prev Next More

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:

About Security API

Get Table Permissions

User group permissions

Choose Pages Screen

Event: After table initialized

"Edit as" settings

Audit and record locking

SQL query screen

About SQLQuery class