Datenmodell

Feldkonfiguration

Die Konfiguration eines Feldes ist ein JSON-Objekt. Welche Schlüssel es gibt, bestimmt die Feldart. Die Listen stehen auf den einzelnen Seiten unter Feldarten .

Bearbeitet wird sie in den Felddetails im Abschnitt Parameter. Alle Parameter als JSON zeigt das ganze Objekt im Editor.

Abschnitt Parameter des Zahlenfelds „Datierung von“ mit aufgeklapptem Bereich „Alle Parameter als JSON“, daneben die Beschreibung der Feldart INT und der Kasten „Vorgabe der Feldart“ mit dem Knopf „übernehmen“.

Zwei Ebenen: Vorgabe und eigene Konfiguration

EbeneWo gepflegtWirkung
Vorgabe der FeldartDatenmodell › Feldarten, je FeldartGilt für jedes Feld dieser Art ohne eigene Konfiguration
Eigene KonfigurationFelddetails, ParameterGilt nur für dieses Feld, an Stelle der Vorgabe

Hat ein Feld eine eigene Konfiguration, tritt sie an die Stelle der Vorgabe. Einzelne Feldarten ergänzen fehlende Teile aus der Vorgabe (beim Zahlenfeld etwa die Eingabemaske), darauf verlassen sollte man sich nicht. Wer bei einem Zahlenfeld nur Einheiten ergänzen will, holt deshalb mit übernehmen zuerst die Schlüssel der Vorgabe in die eigene Konfiguration und ändert dann:

JSON
{
  "units": [{ "unit": "cm", "factor": 1 }, { "unit": "m", "factor": 0.01 }],
  "defaultUnit": { "unit": "cm", "factor": 1 },
  "imask": { "mask": "Number", "scale": 2, "thousandsSeparator": " ", "radix": "," }
}

Eine Änderung unter Feldarten wirkt auf alle Felder dieser Art, die keine eigene Konfiguration haben.

Fehlerverhalten

FallVerhalten
Kein gültiges JSONDer Editor meldet einen Fehler. Die Konfiguration wirkt nicht
Unbekannter SchlüsselWird still übergangen
Falsch geschriebener SchlüsselWird still übergangen. Sieht aus wie „wirkt nicht“
Falscher WerttypMeist übergangen. Bei Eingabemasken greift wieder die Vorgabe

Nichts davon macht das Feld unbenutzbar. Eine fehlerhafte Konfiguration soll keine Werte unerreichbar machen. Dafür fallen Tippfehler nicht auf.

Die häufigsten Tippfehler
  • creatable ist die richtige Schreibweise, in allen Auswahlfeldern. Die ältere Schreibweise createable liest die Auswahlliste noch mit, neu schreiben sollte man sie nicht
  • defaultUnit gegen defaultunit
  • values gegen value

Wenn eine Einstellung nicht wirkt, ist der Schlüsselname die erste Prüfung.

Abweichung je Projekt (Konfigurations-Hook)

Ein Feld kann in einem Projekt anders eingestellt sein. Dafür trägt die Konfiguration einen Block hooks, geschlüsselt nach der Projektkennung:

JSON
{
  "values": ["a", "b", "c"],
  "creatable": true,
  "hooks": {
    "134": { "values": ["a", "x"] }
  }
}

Wird das Feld in Projekt 134 angezeigt oder bearbeitet, legt Moliri die Schlüssel des Hooks über die Grundkonfiguration und lässt den Block hooks weg. In allen anderen Projekten gilt die Grundkonfiguration. Die Felddetails zeigen solche Blöcke unter Abweichungen je Projekt.

Drei Eigenschaften dieser Überlagerung:

  • Sie ist flach. Nur Schlüssel der obersten Ebene werden ersetzt. Ein values im Hook ersetzt das values der Grundkonfiguration, es wird nicht angehängt. Das passt zu „in diesem Projekt bietet das Feld genau diese Werte“.
  • Sie kennt keine Feldart. Der Hook ersetzt, was darin steht.
  • Sie wirkt nur beim Anzeigen und Bearbeiten von Werten. Beim Bearbeiten der Konfiguration bleibt der Block hooks sichtbar und unverändert.
Zwei Dinge heißen Hook

Der Konfigurations-Hook hier ändert die Einstellung eines Feldes je Projekt. Der Wert-Hook ändert den Wert eines Feldes je Projekt, siehe Projektspezifischen Wert setzen . Außer dem Namen haben beide nichts gemeinsam.

Was in einen Konfigurations-Hook gehört

FallSinnvoll?
Ein Projekt braucht eine kürzere AuswahllisteJa
Ein Projekt erlaubt keine eigenen WerteJa
Ein Projekt braucht eine andere BasiseinheitNein. Die Werte wären zwischen Projekten nicht mehr vergleichbar
Ein Projekt braucht das Feld nichtNein. Dafür ist das Layout da
Ein Projekt braucht ein zusätzliches FeldNein. Feld anlegen und nur auf dieses Layout legen

Wo die Konfiguration wirkt

OrtWirkung
Eingabe im LayoutJa, samt Abweichung je Projekt
Galerie, Tabelle, KanbanJa, über die gewählte Formatierung
Excel-ExportJa, über die gewählte Formatierung und Einheiten
Word-VorlagenÜber die Formatierungen, siehe Ausgabe-Formatter in Vorlagen
Excel-ImportAuswahl- und Schalterwerte werden gegen die Konfiguration geklärt. Was nicht eindeutig passt, wird geparkt und ist zu klären
\ en\ de