Skip to main content

Custom Field Templates

Custom field templates define the structure of the metadata captured on documents. Each template is a collection of field entries — individual columns of data such as dates, reference numbers, line items, or lookup values. Templates are typed (Grid, Grid Link, or Filter) and are offered on the documents of the document types they allow.

Before creating a template, identify the required field names, field types, and whether the template needs to support multiple entries (one-to-many) or shared linked entries (many-to-many). See Custom Field Relationships for guidance on template types.

Who configures this​

Users with the Manage Document Custom Fields permission. The Custom Fields area is accessible from New > Custom Fields & Configuration > Custom Fields.

Before you start​

  • Determine the template type (Grid, Grid Link, or Filter) before creating the template. Template type affects how data is stored and displayed.
  • Identify all required field names and field types before building the template. Changing field types after data has been captured is validated against existing data and may be rejected.
  • If the template will use LookupList or LookupListMulti field types, build the lookup lists first. See Lookup Lists.
  • Decide which document types should show the template. A template is shown on a document only when the document's type is in the template's Allowed Document Types; a template with none is shown on no document.

Edit Custom Fields panel​

The Edit Custom Fields panel lists the custom field templates in the database. It is opened from New > Custom Fields & Configuration > Custom Fields.

Edit Custom Fields panel searched for one template

'Edit Custom Fields' panel, searched for a template

ControlDescription
Create New TemplateOpens the template editor to configure a new custom field template.
View inactiveWhen checked, inactive templates are included in the list. By default, only active templates are shown.
Search templatesFilters the template list by template name.
Add GroupCreates a group at the top level of the list. Templates can then be moved into groups. See Organising Templates into Groups.
Edit Custom Fields panel with a template group

'Edit Custom Fields' panel with a template group

Each template card in the list shows:

ElementDescription
Template nameThe name of the template. Click the card to open the template editor.
Type badgeThe template type: Grid, GridLink or Filter.
DateThe date the template was created.
Deactivate / ActivateDeactivates or activates the template (see below).

Deactivate and activate a template​

Deactivate takes the template out of use without deleting it or its data. An inactive template is hidden from the default list of templates, so the rest of the Portal does not offer it, and it is shown in the Edit Custom Fields panel, marked INACTIVE, only while View inactive is checked. Activate puts it back.

An inactive template shown with View inactive checked, with its Activate button

An inactive template

Template editor​

Clicking Create New Template opens the Create New Custom Field Template editor. Clicking an existing template card opens the Edit Custom Field Template editor. Both use the same layout: a settings sidebar on the left and the field entries on the right.

Template editor with a Grid Link template and three field entries

Template editor

Toolbar​

The toolbar at the top right of the editor contains the following controls:

ControlDescription
HelpStarts a guided tour of the editor.
Auto Import ColumnsCreates field entries from the columns of an Excel file. See How to import field columns from Excel.
Propagate Changes to Views (wrench icon)Shown for a saved template. Asks you to confirm, then updates the views built on the template, so that they pick up the template's current fields. The editor reports View propagation completed. when it is done. See How to propagate a template's changes to its views.
Delete Custom Field TemplateDeletes the template. Shown for a saved template. Templates that have existing data associated with them should be deactivated rather than deleted.
Export Template DefinitionDownloads the template's structure as a file named <template name>_template.json, for use when importing into another template. The file does not include the template's Allowed Document Types.
Import Template DefinitionFills the editor with the structure from a definition file exported earlier. Nothing is saved until Save Template.

A saved Grid Link template also has two tabs above its field entries, Fields and Row security, for users with the Group and User Admin permission. Row security grants the register's rows to users and groups. See Register row security.

Custom Field Information​

FieldDescription
Template NameThe name of the template. Required — the template cannot be saved without a name, and a name another template already uses is refused.
Template TypeSets the type of template: Grid (one-to-one or one-to-many), Grid Link (many-to-many), or Filter. See Custom Field Relationships.
Display ModeSets how the template is presented when capturing data: Grid (a table) or Form (a series of fields).
Allow Multiple EntriesLets users add more than one entry for the template. Shown for Grid templates only.

AI Settings​

FieldDescription
AI Extraction PromptA prompt directing AI extraction for the template as a whole. Describes the extraction task and any relevant instructions. Maximum 10,000 characters.
Process Pages IndependentlyWhen enabled, each page of the document is sent to the AI separately rather than as a single combined prompt. Shown for Grid templates only.
Process As ImageWhen enabled, each page is passed as an image alongside the page text during AI extraction.
Auto Extract On UploadMarks the template to be read by AI when a document is uploaded. See Auto Extract On Upload.
Use Only Extracted TablesWhen enabled, AI extraction draws only from tabular data extracted from the document. Useful for structured documents such as invoices.

Auto Extract On Upload​

Auto Extract On Upload works as part of the workspace's Default Upload Extraction. The template is read when a document is uploaded while Default Upload Extraction is switched on (at least one standard field, OCR or image embeddings is enabled there). The template is read only for documents of its Allowed Document Types, and not for a document that already has rows for the template. Set up Default Upload Extraction first: see Default Upload Extraction.

Access Options​

FieldDescription
Allowed Document TypesThe document types whose documents show this template in the Custom Fields section of Document Details. Use Select All or Clear All to manage the selection. A template with no document types is shown on no document.
AI Settings with Auto Extract On Upload ticked and an Allowed Document Type chosen

AI Settings and Access Options

Advanced Options​

These options are for use with support from Docwize staff.

FieldDescription
View NameAn alternative view for this template.
Column Name RendererA Query Builder view that supplies the template's column names.
Limit Rows By QueryGrid Link templates only. Selects a saved Query Builder view to restrict which rows are offered when linking entries to the document being edited. Leave blank to offer every row.

Adding field entries​

Field entries define the individual columns of data captured by the template. The add-entry row at the top of the field entries area contains:

ControlDescription
Field NameThe name of the field entry (for example: Invoice Date, PO Number, Line Amount).
AI Extraction NotesInstructions for the AI to follow when extracting data into this specific field.
Field TypeThe data type for this field. See Field types below.
Add Field Column (+)Adds the configured field entry to the template.

Field types​

The Field Type list offers the types below. Next to Field Type in an expanded field entry, the Field Type Guide (question-mark icon) opens a guide that describes each type with an example, opened at the type of the field you are on.

Field Type Guide opened on the Image type

Field Type Guide

Field TypeDescription
TextShort single-line text, such as names, codes and titles.
FreeTextMulti-line plain text, stored as typed.
NotesRich-text formatted notes (bold, lists, inline formatting).
NotepadLike Notes, and also keeps a plain-text copy of the same text.
NumericDecimal number value.
WholeNumberInteger (whole number) value.
CurrencyMonetary value. The option Currency symbol (display only) shows a symbol before the amount; the stored value stays a plain number.
DateDate value, chosen with a calendar.
DateTimeDate and time value.
CheckboxTrue/false toggle.
URLA web address, displayed as a clickable hyperlink.
SignatureDigital signature capture.
ImageAn image file (PNG, JPEG or another image type, up to 5 MB), shown as a thumbnail with Replace and Remove. Clicking the thumbnail opens the image full screen.
GeoLocationGeographic location value (latitude and longitude).
HiddenStores data but is not displayed to users when the template is viewed.
ComboAn editable dropdown: the user can type a value or pick one.
MultiValueAllows several free-text values to be entered for one field.
LookupListSingle-select dropdown populated from a lookup list. See Lookup Lists.
LookupListMultiMulti-select dropdown populated from a lookup list.
ContactsLookupLookup value sourced from the Contacts module.
CustomDataLookupA dropdown powered by a custom query or data source. List Name (if applicable) names the source.
VirtualCustomFieldLookupResolves a value through a virtual interface query when the field is shown.
LookupFills in a value by matching a key against a source template. Set Source Dictionary (the template), Value Field (return), Key Field (match on) and Match Against (a document field or a field of this template).
CalculatedA read-only field computed from other columns on the same row.
MatrixCalculationA read-only result worked out from two other fields of the template, by a matrix you define in the editor. See Defining the matrix of a MatrixCalculation field.
LinkedColumnLinks this column to a column in the same or a different template. The target template and column are selected when the field is configured.
CustomFieldReferenceLinks this column to rows in another custom field template, enabling related data from different templates to be grouped and viewed together on a document. Choose the Referenced Template.
GridLinkReferenceCreates a relational reference to a row of a Grid Link register. Choose the Referenced Template; rows are linked by row ID unless Custom Join Columns pair a Source Column with a Target Column. Tick Display Value on the register's field to show a human-readable value (for example an employee name) rather than an internal identifier.
SequentialRefGenerates a unique, incrementing sequential reference code for each record (for example, INV-0001). The format is set on the field, for example INV-$SEQ4$. For document-level reference numbers combining static text, dynamic metadata fields, and an auto-incrementing sequence, see Reference Number Template instead.

Expanded field entry options​

Each field entry that has been added to the template can be expanded by clicking the chevron (∧) on the right of the entry. The following options are available:

An expanded field entry with its options

An expanded field entry

Field / ControlDescription
⠿ (drag handle)Reorders the field entry by dragging. Changes the order fields appear in the template.
∧ / ∨Expands or collapses the field entry options.
Delete (bin icon)Deletes the field entry from the template.
Field NameThe name of this field entry. Editable after the field has been added.
Field TypeThe data type. Changing the type on a field that already contains data is validated against existing data before the change is applied.
Caption (Optional)An optional label displayed alongside the field when the template is in use.
AI Extraction NotesExtraction instructions specific to this field. Maximum 5,000 characters.
RequiredWhen enabled, this field must be completed before the document or record can be saved.
Load On DemandWhen enabled, lookup values for this field are loaded only when the field is opened, rather than at page load.
Extraction Page IdentifierWhen enabled, the field records the page number from which AI extraction occurred. Relevant when extracting data on a per-page basis.
Template SectionOptional. Assigns the field to a named section within the template, useful when organising fields in record layouts.
Display ValueGrid Link templates only. Marks the field as the value that names a row wherever rows are listed or picked.
Lookup List, Refetch behaviorLookupList and LookupListMulti fields only. See Lookup Lists.
Validation rulesThe rules a value must pass. See below.
MatrixMatrixCalculation fields only. The two fields the result is worked out from, and the rows that decide it. See Defining the matrix of a MatrixCalculation field.

Further options appear for some field types, as the table of field types above names them.

Validation rules​

A field entry of most types has a Validation rules panel. The panel rejects invalid values as they are entered and when the row is saved. Which rules it offers depends on the type:

Field typesRules
Numeric, WholeNumber, CurrencyMinimum value, Maximum value, Must be a multiple of, Maximum decimal places, and three tick boxes: Allow zero, Allow negative values and Whole numbers only (no decimals).
Text, FreeText, Notes, Notepad, URL, GeoLocationMinimum length (characters), Maximum length (characters), a Format preset (email address, web URL, letters and numbers only, letters only, digits only, no spaces), a Custom pattern (regex) and Trim spaces before validating and saving.
Date, DateTimeEarliest allowed date and Latest allowed date (fixed), Earliest - days from entry and Latest - days from entry (relative, In the past or In the future; for example "Earliest 7, In the past" allows dates up to a week old; setting one clears the fixed date for that bound, and the other way round), and the toggles Reject dates in the past and Reject dates in the future.
MultiValue, LookupListMultiMinimum selections and Maximum selections.
LookupList, Combo, ContactsLookup, CustomDataLookup, Lookup, VirtualCustomFieldLookupThe custom error message only.

Every panel also has Custom error message (optional), shown to users in place of the default when a value fails any rule, and a box to try a value. Type a value into the box and the panel says whether it Passes the current rules, or Would be rejected and why.

Validation rules of a Text field with a value that would be rejected

Validation rules, with a value tried against them

A value already saved before a time-relative rule was added, or before time passed, is not retroactively rejected just because the rule's boundary has since moved past it.

Defining the matrix of a MatrixCalculation field​

A MatrixCalculation field shows a result that is worked out from two other fields of the same template, for example a risk rating from Likelihood and Impact. You define how in the Matrix section of the expanded field entry.

Matrix section of a MatrixCalculation field with two axis fields and three rows

The Matrix section of a MatrixCalculation field

ControlDescription
Axis A field, Axis B fieldThe two fields the result is worked out from. Each list offers the other fields of the template, and the two must be different fields.
Matrix rows, AddAdds a row. Add one row for each combination of the two fields.
OperatorChosen separately for each of the two fields: Equals, where the value must be exactly the condition, or In.
Condition (labelled with the field's name)What the field's value is compared with. In takes a range of whole numbers such as 1-3, or a list such as Low,Medium. A range must run from the lower number to the higher.
ResultThe value the field shows when the row matches.
Result colourThe colour behind the value on a document. A new row starts white, which shows no colour.
Delete (bin icon)Removes the row.

The field shows the result of the first row whose two conditions both match, so put the more specific rows first. When no row matches, or either of the two fields is empty, the field is empty.

Save Template saves the template and then its matrix. A MatrixCalculation field needs at least one row and two different fields of the template as its axes: the editor names the field that needs them and does not save the template until it has them.

On a document that shows the template, the field is shown in a box of the matching row's colour. The information icon beside the field shows the whole matrix as a table.

A document whose Risk Rating field shows High in red for Likelihood 4 and Impact 5

A MatrixCalculation field on a document

How to create a custom field template​

StepDescription
1Navigate to New > Custom Fields & Configuration > Custom Fields.
2Click Create New Template.
3Enter a Template Name and select the Template Type and Display Mode. Enable Allow Multiple Entries if the template requires multiple rows per document (Grid templates).
4Configure AI Settings and Access Options as required. Choose the Allowed Document Types that should show the template.
5In the field entry row, enter a Field Name, add AI Extraction Notes if relevant, and select the Field Type. Click Add Field Column (+) to add the field to the template.
6Repeat step 5 for each required field entry. Use the drag handle to reorder entries as needed. Expand an entry to set its caption, Required, validation rules and other options.
7Click Save Template. The editor closes when the template has been saved.

Example: creating a Grid Link custom field template

How to import field columns from Excel​

Auto Import Columns builds field entries from a spreadsheet: the header row names the columns and the first row of data under it decides each column's type. It reads an Excel file, not an exported template definition (use Import Template Definition for that).

StepDescription
1In the template editor, click Auto Import Columns.
2In Custom Field Auto Importer, click Upload Excel File.
3In Excel Data Transformer, click the upload area (or drag and drop) and choose the file. Choose the sheet with the tabs at the bottom if there are several.
4Click the pin icon at the start of the header row, then click Finish.
5Check the Detected Columns. Change a column's type (Text, Whole Number, Decimal Number, Currency or Date/Time) or remove a column you do not want.
6Choose the Import Mode: Add New Columns Only (the default: columns the template already has are skipped), Add New & Update Types, or Replace All (Destructive), which removes every column the template has first.
7Click Import Columns. The columns are added to the editor; click Save Template to keep them.
Detected Columns with their types and the import mode

Detected Columns and the import mode

Example: importing field columns from an Excel file

How to define a matrix​

StepDescription
1Open the template in New > Custom Fields & Configuration > Custom Fields, or click Create New Template. Make sure it has the two fields the result is to be worked out from, for example two WholeNumber fields.
2Add a field with the Field Type MatrixCalculation and click the chevron (∧) to expand it.
3In Matrix, choose the Axis A field and the Axis B field.
4Click Add under Matrix rows for each combination. Choose the Operator for each field, enter the conditions, the Result, and the Result colour.
5Click Save Template. The matrix is saved after the template.

Example: defining the matrix of a MatrixCalculation field

How to propagate a template's changes to its views​

Propagating updates the views built on a template, so that they pick up the template's current fields.

StepDescription
1In New > Custom Fields & Configuration > Custom Fields, click the template's card to open it.
2Click Propagate Changes to Views (wrench icon).
3Read the confirmation and click Propagate Changes. Cancel closes it without changing anything.
4Wait for View propagation completed.
Confirmation asking whether to rebuild the views built on the template

The confirmation before views are rebuilt

Example: propagating a template's changes to its views

Troubleshooting​

RiskDetail
Template cannot be savedA template name is required, and it must not be the name of another template. The editor says so beside Template Name. A MatrixCalculation field also needs at least one matrix row and two different fields of the template as its axes.
Field type change rejectedChanging the type of a field that already contains data is validated against existing data. If existing data is incompatible with the new type, the change is not applied.
Template not appearing on documentsThe template must be active, and its Allowed Document Types must include the document's type. A template with no allowed types is shown on no document.
Inactive template not visibleInactive templates are hidden by default. Check View inactive in the Edit Custom Fields panel to confirm the template exists but is inactive, and click Activate.
LookupList field shows empty dropdownThe lookup list referenced by the field must be saved and return values for what has been entered in the form. See Lookup Lists.
A template is not read on uploadAuto Extract On Upload works while Default Upload Extraction is on, and for the template's Allowed Document Types. See Default Upload Extraction.