Skip to content

Form Designer reference ​

A form is a data-entry definition: fields with their types, rules and validation, arranged in sections, with hooks for what happens on load, save and cancel. A form is placed on a page like a block. This page documents the Explorer node Forms and the Form Designer. For the page model see How a screen is built; for the overview see Form Designer overview.

Where to find it ​

Workspace > Forms lists the forms. Opening one opens the Form Designer. Forms that belong to an application also appear under that application.

Form list ​

ControlDescription
New form nameRequired.
TemplateBlank, or a sample form such as a sales quotation. The description of the chosen template is shown under the picker.
CreateCreates a draft and opens it.
Describe the formA sentence such as "A leave request form with employee, dates and reason". Generate with AI drafts fields, layout and rules for you to review.

Designer layout ​

AreaContent
ToolbarBack, form name, chip with version, status and revision, autosave state, Undo, Redo, Save draft, Publish.
LeftThe field palette and the Field outline: every field of the form, selectable.
CentreTwo modes: Canvas (the authoring surface) and Preview (the form rendered by the real form engine, so what you see is what runs). The canvas draws design chrome only.
RightThe inspector with Properties and Layers tabs.
Bottom dockTabs Problems, Rules, Validations, Events, Translations, History.

Layout modes ​

ModeBehaviour
Simple listFields in a single list, in order.
Grid layoutFields placed in sections with a number of columns. Each field has a Column span. Small screens collapse to one column.
Free canvasFields placed freely with position and size.

Layouts can be arranged separately per breakpoint (see How a screen is built: responsive layouts).

Keyboard and clipboard ​

KeyAction
Ctrl+ZUndo
Ctrl+Shift+Z, Ctrl+YRedo
Ctrl+CCopy the selected field
Ctrl+VPaste a field from the Studio clipboard. The clipboard works across forms.
Up and Down arrowsSelect the previous or next field
DeleteRemove the selected field
?Show the shortcut list

Every edit is one undoable command. The draft autosaves a few seconds after the last edit with an optimistic-lock revision. If someone else saved a newer revision, the designer offers Reload latest or Save mine anyway. Unsaved work survives a browser crash: on reopening, the designer offers to keep or discard it.

Field kinds ​

KindUse
textA single-line text. Options: secret (obscured as typed), icon, reveal toggle.
numberA number with optional minimum and maximum.
date, time, datetimeDate and time pickers.
selectA dropdown. Needs options.
radioA radio group over the same options.
multi-selectSeveral options may be chosen.
checkboxA true or false value.
currencyA number shown with an ISO 4217 currency code. The stored value stays a plain number.
computedA derived, read-only value from an expression.
child-tableA repeatable set of rows, each with its own columns.

Inspector, Properties ​

PropertyApplies toDescription
NameallThe stored key.
Label keyallA translation key for the label.
RequiredallThe field must have a value.
UniqueallBackend enforced only: no other record may hold this value.
Role rulesallFor a named role: Required, Read-only, Hidden. A deliberately simple actor-to-role rule, separate from Field Permissions.
SectionallThe section that holds the field ((none) for no section).
Min, MaxnumberValue limits.
Min length, Max length, PatterntextLength limits and a regular expression.
Use from Validation LibrarytextLinks the field to a shared validation, for traceability.
Optionsselect, radio, multi-selectThe choices.
SecrettextObscures the value as typed, for example a password.
IcontextA name from a small built-in set, for example user, lock, email.
Currency codecurrencyISO 4217, for example USD. Presentation only.
Column spangrid layoutHow many of the section's columns the field covers.
ExpressioncomputedThe formula.
Style and positioningfree canvasPosition and size.

The Layers tab shows the form's structure.

Child table ​

A child table field has Column name and Column expression for each column, Min rows and Max rows, and a Rollup target with a Rollup expression: a computed field on the parent receives a roll-up of the rows, for example the sum of line amounts. The roll-up target must be an existing computed field (Add a computed field to the form to receive a rollup).

Bottom dock ​

Problems ​

The designer shows the form engine's own diagnostics. Publishing stays disabled while any error exists. Missing translations are warnings and never block publishing.

Rules (form rules) ​

A form rule shows, requires or locks a field, section or tab depending on another field.

FieldDescription
Rule idA name.
Trigger fieldThe field whose value drives the rule.
Target kindfield, section or tab.
TargetThe field, section or tab affected.
Outputvisibility, required, readonly or options.
Condition expressionWhen the rule applies. For options, the expression yields which option set applies, and Reset stale selection on change clears a selection that is no longer offered.

These are not Business Rules and not entity rules.

Validations ​

FieldDescription
Validation idA name.
PriorityA band: 1 Security, 5 Validation, 10 Business rule, 100 Notification.
ActiveSwitches the validation on or off.
Scopefield, cross-field or form.
Validates field, Fields readFor field and cross-field scopes: the field it reports on and the fields the expression reads.
TriggerWhen it runs.
Message keyThe translation key of the message.
Kindexpression (runs immediately, for example a date comparison) or async (an action chain with a server round trip, for example a uniqueness check, with a pending state while it runs).

Events ​

Lifecycle hooks, each with an action chain: onLoad (event FormLoaded), beforeSave (FormSubmitRequested), afterSave (FormSubmitted) and onCancel (FormCancelled). The list shows how many actions each hook has, or not bound. Action steps are in How a screen is built.

Translations ​

Lists every label key the form uses with the translation for each language, so missing translations can be filled.

History ​

Versions of the form with a diff.

Publishing and versions ​

A draft is edited freely. Publish freezes a version. Users see only published versions; History restores older ones by creating a new draft from them. Forms shipped by a plugin are read only; copy the artifact to customise it (see Customize an installed plugin).

Permissions ​

Designing forms is an authoring action on the form artifact type. Every field and form also carries visible, enabled and masked surfaces tied to the permission model; see Permissions and Field Permissions.

API and CLI ​

/api/v1/authoring/forms (drafts, publish, versions), POST /api/v1/authoring/forms/ai-generate. erp artifact list|get|create|update|publish --type forms. Schema: Reference: form.

How a screen is built, Add a create / edit form, Business Logic screens, Block catalog.