How do I?
See also
Using parameters to assign values
Parameters are a mechanism for obtaining, storing, and assigning values during an app session. For example, a designer can use a parameter to obtain input from the app user to control the flow of a macro or to provide the title of a grid. Parameters are available at the app and the macro level. App-level parameters can be inherited by widgets or macros on any app board within an app.
Parameters obtain values in the following ways:
- The designer specifies an initial value in the app or macro properties. This value can be manually typed by the designer or dynamically returned by the system, such as the current date and time or the name of the app user.
- The app user specifies the value in the app, either by typing it at a prompt or choosing it from a list of values defined by the designer or returned by a query.

Parameters are local or global. They have the following characteristics:
- Local parameters — local parameters are limited in scope to the action within which they are created. They are defined using a single at sign and must be placed within curly brackets. For example, "{@myparameter}".
- Global parameters — global parameters are accessible to any action in a macro. They are defined using two at signs and must be placed within curly brackets. For example, "{@@myglobalparameter}".Use the system global parameters to obtain values such as the user ID of the user.
In addition to the main parameter types, parameters are also configured to obtain values in the following ways:
- Constant Value — the value is manually specified by the designer in the statement editor.
- User Enter Value — the value is manually specified at a prompt by the user running the macro.
- User Select From Query-based List — the value is selected from a list generated by a query.
- User Select From Fixed List — the value is selected from a list manually defined by the designer.
- Local Variable — the value is manually specified by the designer.

- String — one or more characters interpreted as text by the application.
- Integer — whole numbers.
- Float — numbers that can include decimal points.
- Date — dates and times.
- Boolean — true or false.

Parameter | Data type | Value returned |
---|---|---|
@@culturename | String | The culture identifier string of the app user's browser, such as en-US. |
@@errormessage | String | An error message string describing the failure (exception) that occurred at the previous node to run in a macro. |
@@filterid | Integer | No longer used. |
@@logid | Integer | The identifier of the log to which output is written. |
@@now | Date | The date and time in the local time zone of the app user. |
@@rand | Float | A random number between 0 and 1 that is the same each time the parameter is used in the same statement. |
@@result | The result of the operation in the previous node to run in a macro. | |
@@scenarioid | Integer | No longer used. |
@@today | Date | The current date (at midnight or 00:00H in the local time zone of the app user). |
@@userfullname | String | The full name of the app user, if known. |
@@userid | String | The unique identifier of the app user. |
@@username | String | The user name of the app user. |
@@utcnow | Date | The current date and time in UTC. |
@@workgroupid | String | The identifier of the app user's workgroup. |

Parameter | Data type | Value returned |
---|---|---|
@@series | String | The identifier string of a series in the chart. |
@@size | Integer | The size of the bubbles in a bubble chart. |
@@xvalue | varies | The value for the x-axis label. The data type depends on the data type of the field used for the x-axis. |
@@yvalue | varies | The value for the y-axis label. The data type depends on the data type of the field used for the y-axis. |
@@yvaluepercent | Float | The proportion of a chart section compared to the whole pie chart or the whole bar in a bar chart. By default, it is in decimal form. This can be formatted as a percent value. |
@@rangevalue1 | Integer | The lower value of a range. |
@@rangevalue2 | Integer | The upper value of a range. |
Last modified: Friday May 12, 2023
How do I?
See also