Skip to content

Form Builder ​

Create dynamic forms without coding.

Overview ​

The form builder designs the forms other parts of the system serve: admission application forms, and the request forms behind workflow-engine approvals such as Leave of Absence.

It lived under Admissions until August 2026. The admissions domain was retired (a different system took over applications), so the form builder moved to Administration → System Configuration and its permission node was recoded ADMISSIONS.FORM_BUILDER → ADMIN.FORM_BUILDER (migration 209). The old /admissions/form-builder URL redirects to /admin/form-builder.

Creating a Form ​

  1. Navigate to Administration > System Configuration > Form Builder
  2. Click Create Template
  3. Configure form settings
  4. Add sections and fields

Form Structure ​

Form Template
├── Section 1
│   ├── Field 1
│   ├── Field 2
├── Section 2
│   └── Field 3

Field Types ​

TypeUse Case
TextShort text input
TextareaLong text/essays
SelectDropdown choices
CheckboxMultiple selections
RadioSingle selection
DateDate picker
FileDocument upload
NumberNumeric input
Table (GRID)A small table instead of a single answer — see Table fields

Table fields ​

A Table field (GRID) collects rows instead of one value — a list of courses to transfer, a term-by-term budget, a checklist with a comment per line. It is the one field type whose configuration is a document rather than a setting, so it is described here in full.

Rows: who decides how many ​

ModeMeaningOptions
DynamicThe person filling the form adds and removes rowsmin, max (cap 200), and the label on the add button
FixedYou declare the rows; the person fills in the cellsup to 50 declared rows, each with a code and a label

A table is one or the other. Declaring fixed rows on a dynamic table is rejected when you save.

Columns ​

Up to 20 columns. Each has a code, a label and a type, and may be required on its own. Only five cell types are offered:

TEXT, NUMBER, DATE, SELECT, CHECKBOX

This is a deliberate subset. Anything needing more than one line, a file upload, or a lookup round-trip does not belong in a table cell — use a separate field. A SELECT column carries its own options, independent of every other column.

A NUMBER column can be marked Total, which shows a summed footer row; the table as a whole has a Show totals switch that turns that footer on.

Rules that will stop you saving ​

  • Column and row codes must start with a letter and contain only letters, digits and underscores. Leading underscores are refused because _row is reserved — it is how a fixed table records which declared row an answer belongs to.
  • Codes must be unique within the table.
  • A SELECT column with no options, a minimum above its maximum, or a maximum below 1 are all rejected at save time rather than at submission time.

An empty table is not an answer

A table the user never added a row to counts as unanswered, exactly like an empty multi-select. If a table must be filled in, mark the field required — marking individual columns required only constrains the rows that do exist.

Changing a table after responses exist

Answers are stored keyed by column code. Renaming a column's label is safe; changing its code orphans every answer already collected under the old one. Add columns rather than repurposing them.

Field Settings ​

Configure per field:

  • Required/optional
  • Validation rules
  • Help text
  • Conditional display

Program Assignment ​

Assign forms to programs:

  1. Go to Program Forms tab
  2. Link form to program/term
  3. Form appears for those applicants

Viewing Responses ​

  1. Go to Form Responses
  2. View submitted data
  3. Export for analysis

Student Information System Documentation