Control properties¶
Every control has the same panel. What changes between controls is which fields the panel shows: a date does not need a list of options, and a file does not need a default value.
The fields¶
| Field | What it does |
|---|---|
| ID | The control's identifier in the page. It is generated and unique; the name and the variable are what you normally change |
| Name | The identifier of the control inside the form. It must be unique, and conditions and scripts refer to the control by this name |
| Variable | The case variable the value is stored in |
| Data type | Read-only: the type of the variable the control is bound to |
| Label | The text the user sees above or beside the control |
| Hint | Help text shown with the control — for example when the user hovers it |
| Placeholder | The grey text inside an empty field |
| Default value | The value the control starts with when the form opens |
| Required | The form will not submit while the field is empty |
| Display mode | Whether the control is editable, read-only or disabled in the case |
| Protected value | Hides the stored value instead of showing it |
| Tab index | The order in which the Tab key moves through the controls |
| Aria label | The name a screen reader announces, when the visible label is not enough |
| Options | The list of choices, or the query that produces it |
| Database connection | The connection used when the options come from a database |
| SQL | The query that returns the options |
Name and variable are not the same thing, and mixing them up is the most common mistake in a form: the name is internal to the form, the variable travels with the case.
Where the options come from¶
Choice controls take their options from one of two places:
| Source | Use it when |
|---|---|
| Database | The values live in a table or arrive through a connection |
| Array variable | A process variable already holds the list, and the form should not query anything |
With a database source the control stores the connection and the SQL; with an array variable it reads the variable when the form opens.
Properties that accept a variable¶
Some properties take a variable instead of a fixed value, written with the usual
prefixes: Default value, and for a date control its minimum, maximum and
default date. Typing @@ opens the variable picker, so the value a control starts
with can depend on the case.
Fields that only some controls have¶
| Control | Extra fields |
|---|---|
| File | Allowed extensions (*.* accepts any) and maximum size with its unit |
| Grid | The column list: name, type, bound variable and width |
| Suggest | The source query, the field used to filter it, and the limit of results |
| Text, textarea, dropdown, checkgroup, radiogroup, suggest, hidden | The database connection and SQL used to build the options |
| Date | The format and the mask |
The file size is checked against the server limit as well: a value above the upload limit of the PHP configuration is refused when you save the property, not when a user uploads.
Where the panel puts things¶
- Labels use sentence case, for example Default value.
- The panel opens at the right edge and floats over the canvas.
- The × closes it; the vertical tab on the right edge opens it again.
Related¶
- Control types — the catalogue.
- Conditions — using a control's value in an expression.
- Dynaform editor — the canvas and the preview.