Skip to content

Read-Only Permissions

Read-only permissions can be set on lines and line fields. These permissions are based upon a condition that contains references to fields in the same line. If a certain condition is met on one field, another field or the whole line can be made read-only.

Note that the current implementation only covers lines and line fields based on a condition evaluated in the same line. It is currently not possible to use BizzStream expressions with header fields, nor is it possible to make a line group read-only.

These are the components of a document, where the Read-only can only be applied to the lines and line fields.

A line can be made read-only as a whole.

A field in a line can be made read-only.

Setting Read-Only Permissions

Please complete the following steps to set the field and line permissions for an Access Group:

  1. Open a Document Definition.
  2. Expand the Access Groups selection of a Document Definition.
  3. Expand an Access group and select the Permissions.
  4. Scroll to the section Read-only conditions .
  5. Click New.
  6. The first column of the grid you can select the line or line field to which the condition applies. (you can only select a line or line field once)
  7. In the status column you can add a condition, this condition can only refer to a line field.

Example

The following example makes a line or field read-only when the line field "fieldName" equals "test".

{!fieldName!} <> "test"

Note

  • When a line is read-only, the line cannot be copied or deleted.
  • When a user is part of multiple Access Groups and a read-only condition is valid in one Access Group, but does not exist in the other, the condition is not applied.
  • The condition also applies for REST actions if permissions apply.

Operators for conditions

The following operators can be used in conditions.

Operator Description Example
== The field in the referred document is equal to a set value. {!target.projectName!} == {!source.projectName!}
<> The field in the referred document is not equal to a set value {!target.projectName!} <> {!source.projectName!}
> The document contains a field with a value that is larger than a set value {!target.amount!} > 5
=> The document contains a field with a value that is larger or equal than a set value {!target.amount!} => 5
< The document contains a field with a value that is smaller than a set value {!target.amount!} < 5
<= The document contains a field with a value that is smaller or equal than a set value {!target.amount!} <= 5
<> The document does not equal a set value {!target.projectName!} <> {!source.projectName!}
in Used to reference to a 1-N reference field to filter the options {!source.restaurant{"fieldName":"employees","operator":"in"}!}
match Used to compare the values of two reference fields {!target.mainIngredient!} match {!sourceLine.preferredIngredients!}
&& The and-operator links multiple operators together. All conditions have to be met for the document to become available in the reference field {!target.amount!} > 5 &&{!target.amount!} < 10
|| The or-operator links multiple operators together. All conditions have to be met for the document to become available in the reference field {!target.amount!} > 5 || {!target.amount!} < 10
hasValue The field has a value. This operator returns false in the case of empty strings, empty arrays, or null values. {!target.projectName{"operator":"hasValue"}!}
hasNoValue The field has a value. This operator returns true in the case of empty strings, empty arrays, or null values. {!target.projectName{"operator":"hasNoValue"}!}