Expression language for defining conditions (conditions with getValue)

Condition writing editor

Advanced condition editor

Conditions in JavaScript format

circle-exclamation

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==10

Identifiers 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?