Column Access Registry entry
Specify the privileges that users / groups have on a per column basis.
EMu module controls (text fields, checkboxes, radio buttons, etc.) map to a column in a table. Column privileges determine whether a user sees a particular control, and whether the user can modify data in the control.
To enter text into controls, or to be able to change their value a user must have the du
privilege corresponding to the current mode (Edit, New or Search). If they do not have this privilege (e.g. duEdit for Edit mode), the controls will be greyed out.
Tip:
Think of du
as "define update".
To see a control a user must have the dv
privilege corresponding to the current mode (e.g. dvEdit for Edit mode), otherwise the control will be invisible.
Tip:
Think of dv
as "define view".
If the first column in a Group box is hidden, all fields in the group will also be hidden. Consider the Person Details group of fields in the Parties module:
- Title: (Person Details)
- First: (Person Details)
- Middle: (Person Details)
- Last: (Person Details)
- Suffix: (Person Details)
- Other Names: (Person Details)
Hiding Title: (Person Details) will hide all fields in the Person Details group of fields.
Usage
This Registry entry can be assigned to users and groups:
Key | User | User | Group | Group | Group | Group |
---|---|---|---|---|---|---|
Key 1 | User
|
User
|
Group
|
Group
|
Group
|
Group
|
Key 2 | user | user | group | group | Default
|
Default
|
Key 3 | Table
|
Table
|
Table
|
Table
|
Table
|
Table
|
Key 4 | table | Default
|
table | Default
|
table | Default
|
Key 5 | Column Access
|
|||||
Key 6 | column or Default |
|||||
Value | priv;priv;... |
User
|
user | Table
|
table | Column Access
|
column | priv;priv;... |
User
|
user | Table
|
Default
|
Column Access
|
column | priv;priv;... |
Group
|
group | Table
|
table | Column Access
|
column | priv;priv;... |
Group
|
group | Table
|
Default
|
Column Access
|
column | priv;priv;... |
Group
|
Default
|
Table
|
table | Column Access
|
column | priv;priv;... |
Group
|
Default
|
Table
|
Default
|
Column Access
|
column | priv;priv;... |
User
|
user | Table
|
table | Column Access
|
Default
|
priv;priv;... |
User
|
user | Table
|
Default
|
Column Access
|
Default
|
priv;priv;... |
Group
|
group | Table
|
table | Column Access
|
Default
|
priv;priv;... |
Group
|
group | Table
|
Default
|
Column Access
|
Default
|
priv;priv;... |
Group
|
Default
|
Table
|
table | Column Access
|
Default
|
priv;priv;... |
Group
|
Default
|
Table
|
Default
|
Column Access
|
Default
|
priv;priv;... |
where:
column |
is a back-end column name; or use |
|||||||||||||||
priv;priv;... |
is a semicolon separated list of permissions: |
|||||||||||||||
|
When applying column privileges EMu first applies the Default
access privileges to all columns, then individual column privileges are used to override the default set.
Note: Adding a Column Access entry for a column overrides any default settings for that column.
To have all but one column (e.g. BioBirthPlace
) in a table (e.g. eparties) visible to users:
- Set a default entry that provides
dvDisplay
for all fields in the eparties table. - Set an entry for the BioBirthPlace that does not include the dvDisplay privilege.
Note: As soon as an entry exists for a column, any default settings no longer apply to that column.
While creating an entry for a column with no privileges assigned might seem like a reasonable way to hide a column, it is not advised as a Column Access Registry entry without a value is read by the system as a syntax error. If you want a column to be hidden, create a Column Access entry for the column with duQuery as the only value: even though it has update privilege in Query mode, the column is not visible in any mode.
Examples
The Volunteers group is only permitted to modify the Place of Birth field (column name is BioBirthPlace) in the Parties module (eparties table):
Key | Setting |
---|---|
Key 1 | Group
|
Key 2 | Volunteers
|
Key 3 | Table
|
Key 4 | eparties
|
Key 5 | Column Access
|
Key 6 | Default
|
Value | dvDisplay;dvEdit;dvQuery;duQuery
|
Key | Setting |
---|---|
Key 1 | Group
|
Key 2 | Volunteers
|
Key 3 | Table
|
Key 4 | eparties
|
Key 5 | Column Access
|
Key 6 | BioBirthPlace
|
Value | dvDisplay;dvEdit;duEdit;dvQuery;duQuery
|
The first entry sets the default access privileges for all columns in the eparties table: users in the Volunteers group are able to enter search terms into any field (duQuery
) and view all fields (dvDisplay, dvEdit, dvQuery). They cannot update (edit) any columns (this requires duEdit) or add new records (this requires dvInsert and duInsert).
The second entry modifies the privileges for the column BioBirthPlace so that this column can be edited (duEdit).