Row Level Entitlements
These are entitlements that apply to specific rows. Used in conjuncture with Column Level entitlements this allows for granular cell level entitlements.
Insert Row
This permission allows a user to create new rows in the table.
Delete Row
This permission allows users to delete rows in the table.
Viewable & Editable Row Filter
This is a CQL fragment that applies a filter to which rows will be viewable or editable. Think of the column entitlements and the fragment as a SQL statement applied to the table.
SELECT {Edit Selected Columns}
WHERE {Editable Row Filter}
Examples for Row Filter
Most of these examples will be with the editable row filter so it is easy to see the underlying data for comparison. However this can be done for viewable row data as well.
Sample Data
Simple Example
Edit Specific Columns: Age Editable Row Filter: [Age] > 30
Example with Viewable Data
View Specific Columns: First Name, Last Name
Viewable Row Filter: [End Date] IS NULL OR [End Date] > GetDate()
Layer On Another Entitlement
View Specific Columns: All Edit Specific Columns: First Name, Last Name, Age Viewable Row Filter: [First Name] = 'John' Editable Row Filter: [First Name] = 'John'
Example for Current User
For the All Users group:
View All Columns: Check
Edit Selected Columns: First Name, Last Name
Editable Row Filter: [User Account].[Cinchy Id] = CurrentUserId()
To allow a user to edit certain fields of their own data, you will need an association from a user to the [Cinchy].[Users]
table. You can then use the following function to allow edit for that user, where [...]
is the chain of link columns to get to the Users table.
[...].[Cinchy Id] = CurrentUserId()
Last updated