Managing session variables
Session Variables Panel
The panel for managing session variables is Session variables. To open it, select the option in the left menu Session variables. On the right side of the panel's title bar there is a magnifying glass icon that allows searching the variable list.

Adding a new session variable
Adding a new session variable is done by pressing the button Add session variable.
In the new row added at the very top of the panel we fill in:
Mid - the variable key
Default value - the constant value of the variable
Service id - after attaching the session variable to a service, the name of that service will appear here
Output parameter - if the session variable will be an output parameter of the service, it will be specified here
Exposed - we mark whether the given session variable should be passed to the client explicitly. This option allows using the session variable in conditional expressions and formatters executed on the client side. If the session variable has the box unchecked, it is not sent to the client.
Gtm
GTM tag - the name of the GTM tag
Statistics - enabling the option to send the variable's value to statistics.

After leaving the name field, the variable is created. If a name is not defined for the variable, the system will automatically assign the value "empty" or a copy of that value if it already existed.
Editing an existing session variable
To edit an existing variable, simply click in the Mid column and change the value.
Definition of service output
A session variable can serve as a place to store the result of executing a service defined within any page of the current application.
Mapping the variable to the appropriate service output field is defined in the Page servicespanel, which we slide out by clicking the button Page services:

After the list of services available for the application appears, we look for the appropriate service, then reveal its details by clicking the option on the right side of the panel Show details. Mapping the service output to the variable will be possible after clicking Output parameters in the displayed details:

In the output parameters tab we click the button Add parameter — this will display a row in which first, in the Application componentcolumn, we select the session variable for which we want to map the output, and then in the Output parametercolumn, we indicate the appropriate output:

After correctly attaching the service to the variable, its properties will show information about the attached service and the specified output parameter:

Deleting a session variable
Deleting a session variable is done by selecting the trash icon available when hovering over that session variable's row. An attempt to delete a session variable used in an artifact (e.g., as an input parameter to a service or listening to a variable) will result in an informational message being displayed:

Using a session variable to determine a component's initial value
To use a session variable to determine the initial value of a given element, perform the following steps:
select the component
in the list of available properties find the property in the Interactions section DATA SOURCE FROM ANOTHER FIELD
after clicking on Choose component or constant we can choose the mid of the session variable that is to serve as the default value of that element,
additionally, you should add listening to the variable according to the instructions in: Listening and clearing
Using a session variable to retrieve a component's value
For the session variable we select the EchoService added to the application's page.
Examples of using a session variable
Using a session variable in a condition: getValue("@zmienna1")=="Y" where zmienna1 is the name of the variable
Using a session variable in a Label component: The current value of the variable is ${zmienna1} where zmienna1 is the variable name
Attention!
If you use a session variable in a composite component, you should add the symbol @ before its name (this notation is not used for predefined variables).
Session variables cannot be used in Repeatable section - RepeatableSection — here we use technical fields.
Last updated
Was this helpful?
