Skip to content

Field Management

Under Administration > Fields (/v2/admin/fields), the dynamic field configuration is managed. Fields determine which data fields are displayed in forms and lists.

Field Management

Concept

calServer uses a dynamic field system with metrology codes:

Table Field Prefix Examples
Inventory I42xx I4201 (Asset Number), I4202 (Manufacturer), I4203 (Model), I4206 (Serial Number)
Calibration C23xx C2301 (Calibration Date), C2303 (Next Calibration), C2323 (Result)
Customers K46xx K4601 (Customer Number), K4602 (Name), K4603 (Street)

Each code is mapped to an API name through the field registry (field_definitions) (e.g. I4201 → asset_number); the V1 code remains a valid field identifier alongside it (see V1 field names).

Field Configuration

The following properties can be configured for each field:

Property Description
Visible Whether the field is displayed in forms and lists
Required Whether the field must be filled in
Read-only Whether the field is read-only
Default Value Pre-filled value for new records
Order Position in the form
API Name Descriptive name for the REST API
Change protection Warning or prohibition when the value is changed (see below)
Message text Wording of the warning or prohibition

Field Name and Translations

As in V1, a field's name comes from the translation management as soon as a translation string exists for it (category fields, key {table}.{api_name}, e.g. inventory.serial_number). All factory fields have one from delivery. The label is then locked in field management and marked with a language icon; the link "In der Sprachverwaltung ändern" opens the translation editor on that key, where the name is maintained per language.

Custom fields without a translation string keep their label from field management until somebody translates them.

Change Protection

Some fields should not be changed in passing — an asset number appears on certificates and labels, and a contractually fixed value must not move at all. Three levels are available per field:

Level Effect
No protection The field behaves like any other (default)
Warning The mask asks before applying the change. "Cancel" restores the original value; after confirmation the record saves normally
Prohibition The field is locked in the mask, and the server rejects a change with an error — over the REST API and during Excel import as well

The message text is free-form. If left empty, a default wording is used. Three placeholders are available:

Placeholder Replaced by
{field} The field's label
{old} Previous value
{new} New value

What the protection does not prevent

Both levels concern changing an existing value. Creating a record and filling a so-far empty field for the first time stays possible — otherwise migrated records could never be completed.

MET/TEAM sync exception

The MET/TEAM pull mirrors the state of the foreign system and therefore bypasses the prohibition. Without that exception the sync would stall permanently on a field changed in MET/TEAM and locked in calServer.

Protected out of the box: the asset number (I4201) is set to warning. It is the identifier certificates, labels and connected systems use to find the device. Set the field to no protection in field management if you do not want this.

Changing the Order

Form order and grid order are stored separately:

  • Form order (display_order) — position in the create, edit and detail form. Changed right in the field list of the area tab: drag a row by the handle on the left, or use the arrows in the row. Every move is saved immediately and assigns sequential positions (1..N).
  • Grid order (display_order_grid) — default column order in tables. Use Reihenfolge anpassen in the tab toolbar and switch to "Grid-Reihenfolge".

List sorting

Reordering requires the field list to be sorted ascending by the Order column — only then does the displayed sequence match the form order. Under any other sort the handle and arrows are disabled.

Additional Fields

Through Additional Fields, field configurations can be overridden per category or status:

  • A field can be visible for Category A but hidden for Category B
  • Required status can vary depending on the status
  • This enables flexible forms without code changes

Export/Import

Field configurations can be exported and imported:

  • Export — Saves the current configuration as JSON
  • Import — Applies a saved configuration

Field changes

Changes to the field configuration take effect immediately for all users. Test changes with a test user first.