Expression language for defining conditions (conditions with getValue)
Condition writing editor
Conditions in JavaScript format
Conditions within composite components
For conditions written in composite components, variable/field identifiers should be prefixed with the character @ e.g. @GesCombobox1.
It is possible to describe all conditions defined in the application template using expressions of the JavaScript.
JS conditions provide methods:
getValue("ID_KOMPONENTU") - recommended way to return a component's value (any other may cause performance issues)
getData("COMPONENT_ID","COMPONENT_ATTRIBUTE") - returns the value of the given component attribute, available attributes can be found here Component attributes
isVisible("COMPONENT_ID") - a way to check whether a component is visible (requires listening, you cannot retrieve the visibility of a radio button or the visibility of elements inside a repeating section from outside the repeating section)
getStatementValue("COMPONENT_ID", "STATEMENT_ID") - allows returning the value of the selected statement for the Statements component.
All field values available during condition evaluation are text values, therefore for operations on numbers or booleans a deliberate conversion must be performed.
Examples of conditions in JavaScript:
// integer comparison of a TextField type field
parseInt(getValue("GesTextField3"))>5
// floating-point comparison of a TextField type field
parseFloat(getValue("GesTextField5"))<200.001
// logical value comparison (equal) of a CheckBox type field
getValue("GesCheckbox1")=="true"
// logical value comparison (not equal) of a CheckBox type field
getValue("GesCheckbox1")!="true"
// text value comparison of a RadioGroup type field
getValue("GesRadioGroup1")=="audi"
// check if a value, e.g. a session variable, is not empty
!!getValue("nazwiskoZew")
// check if a value, e.g. a session variable, is empty
!getValue("nazwiskoZew")
// check whether the statement with mid oswiadczenie1 in the component with id GesStatementPopup1 has been accepted
getStatementItem("GesStatementPopup1","oswiadczenie1") == "true"
// check whether the statement with mid zdrowotne in the component with id GesStatementFlat5 (located in a composite component) has been accepted
getStatementItem("@GesStatementFlat5","zdrowotne")=="false"
// requiredness condition for a field if others are empty
!!!(getValue("@GesTextField13")||getValue("@GesTextField8"))
// check values of comboboxes
getValue("@GesCombobox1")!=2&&getValue("@GesCombobox1")>0
// check if TextField is visible
isVisible("@GesTextField1")=="true"
// check whether the number of characters in TextField equals 10
getValue("GesTextField5").length==10Identifiers can be used in conditions (id) of all fields available in the application template.
The syntax allows defining:
negation of an expression by the operator "!" at the beginning of the expression
conjunction of expressions with the operator "&&", e.g. getValue("@GesCombobox1")==1&&getValue("@GesCombobox1")==2
alternative of expressions with the operator "||", e.g. getValue("@GesCombobox1")==1||getValue("@GesCombobox1")==2
The following types may be used in expressions:
constant values
textual
numeric
binary - true and false
component identifiers e.g. GesTextField1
application variable identifiers, e.g. partner.
Last updated
Was this helpful?
