Zum Hauptinhalt springen

Meta-Daten von Feldern

Jedes Feld kann unter cms zusätzliche Angaben erhalten, die die Datenbank des CMS und die Pflegeanwendung auswerten.

interface IMetaData {
cms?: {
/** Bei sortable: bevorzugte Sortierrichtung, Voreinstellung aufsteigend. */
ascending?: boolean
/** Feld in der Liste der Pflegeanwendung anzeigen. */
column?: boolean
/** Anzeigename des Felds. */
label?: string
/** Feld in die Volltextsuche aufnehmen. */
fulltext?: boolean
/** Datenbankindex anlegen. */
index?: 'ascending' | 'descending'
/** Sortierung nach dem Feld anbieten. */
sortable?: boolean
/** Eindeutigen Datenbankindex anlegen. */
unique?: boolean
/** Index unterscheidet Groß- und Kleinschreibung, Voreinstellung nein. */
useCase?: boolean
}
}

Datenbank​

  • index legt einen Datenbankindex an (ascending oder descending). Ohne weitere Einstellung beschleunigt er Suche und Sortierung nach dem Feld.
  • unique legt einen Index an, der sicherstellt, dass jeder Wert des Felds nur einmal vorkommt. Bei optionalen Feldern kann dann auch nur ein Datensatz ohne Wert existieren. unique und index lassen sich kombinieren. Die Prüfung ist eventuell nur im Server möglich.
  • useCase wirkt nur zusammen mit index oder unique. Ohne useCase vergleicht der Index unabhängig von Groß- und Kleinschreibung: Mit unique können dann z. B. inSynergie und insynergie nicht gleichzeitig vorkommen. Mit useCase wird exakt verglichen.
  • fulltext legt zusätzlich einen MongoDB-Textindex an, der eine Suche mit $text erlaubt. Die Pflegeanwendung nutzt ihn derzeit nicht.

Pflegeanwendung​

  • label: Anzeigename des Felds. Ohne Angabe wird der technische Name verwendet.
  • column: Das Feld erscheint auch in der Liste der Datensätze, nicht nur im Formular. Bei Unterfeldern einer Substruktur muss column auch an der Substruktur gesetzt sein. Einige Datentypen lassen sich grundsätzlich nicht als Spalte anzeigen, z. B. HTML-Inhalte.
  • sortable: Die Liste bietet eine Sortierung nach dem Feld an. Auch hier gilt: nicht für alle Datentypen, z. B. nicht für Dateien. Erlaubte Sortierfelder in Abfragen ergeben sich ebenfalls aus sortable.
  • ascending: Bei sortierbaren Feldern die bevorzugte Richtung der ersten Sortierung, Voreinstellung aufsteigend. Absteigend ist bei zeitartigen Werten sinnvoll. Einen eigenen Datentyp für Zeitpunkte gibt es nicht, eine Zeichenkette im Format ISO 8601 sortiert aber korrekt, wenn man sich auf eine Zeitzone beschränkt (empfohlen: UTC).

Die Felder erscheinen im Formular in der Reihenfolge der Beschreibung.