Feldverwaltung¶
Unter Administration > Felder (/v2/admin/fields) wird die dynamische Feldkonfiguration verwaltet. Felder bestimmen, welche Datenfelder in Formularen und Listen angezeigt werden.
Konzept¶
calServer verwendet ein dynamisches Feldsystem mit Metrologiecodes:
| Tabelle | Feldpräfix | Beispiele |
|---|---|---|
| Inventar | I42xx | I4201 (Prüfmittel-Nr), I4202 (Hersteller), I4203 (Modell), I4206 (Seriennummer) |
| Kalibrierung | C23xx | C2301 (Kalibrierdatum), C2303 (Nächste Kalibrierung), C2323 (Ergebnis) |
| Kunden | K46xx | K4601 (Kundennummer), K4602 (Name), K4603 (Straße) |
Jeder Code wird über die Feld-Registry (field_definitions) einem API-Namen zugeordnet (z. B. I4201 → asset_number); der V1-Code bleibt daneben als gültiger Feldbezeichner erhalten (siehe V1-Feldnamen).
Feldkonfiguration¶
Für jedes Feld können folgende Eigenschaften konfiguriert werden:
| Eigenschaft | Beschreibung |
|---|---|
| Sichtbar | Ob das Feld in Formularen und Listen angezeigt wird |
| Pflichtfeld | Ob das Feld ausgefüllt werden muss |
| Schreibgeschützt | Ob das Feld nur lesbar ist |
| Standardwert | Vorbelegter Wert bei Neuanlage |
| Reihenfolge | Position im Formular |
| API-Name | Sprechender Name für die REST-API |
| Änderungsschutz | Warnung oder Verbot beim Ändern des Werts (siehe unten) |
| Meldungstext | Text der Warn- bzw. Verbotsmeldung |
Feldname und Sprachverwaltung¶
Wie in V1 kommt der Name eines Felds aus der Sprachverwaltung, sobald dort
ein Sprachstring für das Feld hinterlegt ist (Kategorie fields, Schlüssel
{tabelle}.{api_name}, z. B. inventory.serial_number). Für alle Werksfelder
ist das ab Auslieferung der Fall. Das Label ist in der Feldverwaltung dann
gesperrt und mit einem Sprachsymbol markiert; der Link „In der Sprachverwaltung
ändern" öffnet den Übersetzungseditor direkt auf diesem Schlüssel. Dort wird
der Name je Sprache gepflegt.
Selbst angelegte Felder ohne Sprachstring behalten ihr Label aus der Feldverwaltung, bis jemand sie in der Sprachverwaltung übersetzt.
Änderungsschutz¶
Manche Felder sollen nicht beiläufig geändert werden — eine Prüfmittel-Nummer steht auf Zertifikaten und Etiketten, ein vertraglich fixierter Wert darf überhaupt nicht wandern. Pro Feld sind dafür drei Stufen wählbar:
| Stufe | Wirkung |
|---|---|
| Kein Schutz | Feld verhält sich wie jedes andere (Standard) |
| Warnung | Die Maske fragt nach, bevor sie die Änderung übernimmt. „Abbrechen" stellt den ursprünglichen Wert wieder her. Gespeichert wird nach Bestätigung ganz normal |
| Verbot | Das Feld ist in der Maske gesperrt, und der Server lehnt eine Änderung mit einem Fehler ab — auch über die REST-API und beim Excel-Import |
Der Meldungstext ist frei. Bleibt er leer, erscheint eine Standardformulierung. Drei Platzhalter stehen zur Verfügung:
| Platzhalter | Wird ersetzt durch |
|---|---|
{field} |
Beschriftung des Felds |
{old} |
Bisheriger Wert |
{new} |
Neuer Wert |
Was der Schutz nicht verhindert
Beide Stufen betreffen das Ändern eines vorhandenen Werts. Einen Datensatz anzulegen und ein bislang leeres Feld erstmals zu füllen bleibt möglich — sonst ließen sich migrierte Datensätze nie vervollständigen.
Ausnahme MET/TEAM-Abgleich
Der MET/TEAM-Pull spiegelt den Stand des Fremdsystems und läuft deshalb am Verbot vorbei. Ohne diese Ausnahme bliebe der Abgleich dauerhaft an einem Feld hängen, das im MET/TEAM geändert wurde und in calServer gesperrt ist.
Werksseitig geschützt: die Prüfmittel-Nr. (I4201) steht auf Warnung. Sie ist der Identifikator, über den Zertifikate, Etiketten und angebundene Systeme das Gerät finden. Wer das nicht möchte, stellt das Feld in der Feldverwaltung auf Kein Schutz.
Reihenfolge ändern¶
Formular- und Grid-Reihenfolge werden getrennt gespeichert:
- Formular-Reihenfolge (
display_order) — Position im Anlege-, Bearbeiten- und Detailformular. Direkt in der Feldliste des jeweiligen Bereichs-Tabs änderbar: Zeile am Griff links ziehen oder die Pfeile in der Zeile verwenden. Jede Verschiebung wird sofort gespeichert und vergibt fortlaufende Positionen (1..N). - Grid-Reihenfolge (
display_order_grid) — Standard-Spaltenreihenfolge in Tabellen. Über Reihenfolge anpassen im Tab-Toolbar, dort auf „Grid-Reihenfolge" umschalten.
Sortierung der Liste
Umsortieren setzt voraus, dass die Feldliste nach der Spalte Reihenfolge aufsteigend sortiert ist — nur dann entspricht die angezeigte Sequenz der Formular-Reihenfolge. Ist nach einer anderen Spalte sortiert, sind Griff und Pfeile deaktiviert.
Zusätzliche Felder (Additional Fields)¶
Über Additional Fields können Feldkonfigurationen pro Kategorie oder Status überschrieben werden:
- Ein Feld kann für Kategorie A sichtbar, für Kategorie B unsichtbar sein
- Pflichtfeld-Status kann je nach Status variieren
- Dies ermöglicht flexible Formulare ohne Code-Änderungen
Export/Import¶
Feldkonfigurationen können exportiert und importiert werden:
- Export — Sichert die aktuelle Konfiguration als JSON
- Import — Übernimmt eine gespeicherte Konfiguration
Feldänderungen
Änderungen an der Feldkonfiguration wirken sich sofort auf alle Benutzer aus. Testen Sie Änderungen zunächst mit einem Testbenutzer.
Feldrollen, Kundensuche und Zähler — umgezogen¶
Welches Feld eine Systemrolle übernimmt (Statusfeld, Typfeld, Anzeigefelder), wie Kunden in Auswahlfeldern erscheinen und die globalen Zähler stehen seit dem 17.08.2026 unter Vorgaben im Tab Feldvorgaben.
Der Unterschied zu dieser Seite ist die Frage, die beantwortet wird: Die Feldverwaltung sagt, welche Felder es gibt und wie sie sich verhalten. Eine Feldvorgabe sagt, was mit ihnen gilt — sie wählt aus dem Register aus, statt es zu füllen. Die Zähler wiederum haben mit einer Feldliste gar nichts zu tun, sie speisen [GLOBAL_COUNTER_N] in Vorgabewerten.
Gespeichert wird unverändert nach settings/calibration bzw. settings/customer; nur die Bedienstelle hat sich geändert (ADR-031, ADR 2026-08-17).
