Das Modell als Quelle
Im Hub legen Sie fest, welche Dinge Ihre Anwendung kennt – etwa Kunde, Auftrag oder Rechnung –, welche Felder sie haben und wie sie zusammenhängen. Sie modellieren, Sie programmieren dabei nicht. Aus dieser Beschreibung erzeugt der Build Datenhaltung, Schnittstellen, Prüfungen und Rechte.
Die Bausteine dafür sind überschaubar:
- Ordner gruppieren Modelle und bestimmen später Pfade und Rollennamen.
- Aufzählungen halten feste Wertelisten, etwa einen Kundenstatus.
- Modelle tragen Felder: einfache Werte, Aufzählungsfelder und Beziehungen.
- Abstrakte Modelle bündeln gemeinsame Felder, die mehrere Untermodelle erben – etwa Privat- und Firmenkunde unter „Kunde“.
- Singletons gibt es genau einmal – für die Installation, je Mandant oder je Person, etwa für Einstellungen.
Regeln am Feld
Welche Werte ein Feld annehmen darf, legen Sie per Haken fest. Data Management prüft diese Regeln bei jedem Anlegen, Ersetzen und Ändern – gleichgültig, ob die Anfrage aus einem Formular, einer Integration oder einem Skript kommt.
- Pflichtfeld – immer oder nur beim Anlegen beziehungsweise Ändern
- nicht leer, nicht mehr änderbar, eindeutig
- Muster für Texte, Mindest- und Höchstwert für Zahlen
- Langtext und verschlüsselte Ablage für Texte
Vorgabewerte und gesammelte Meldungen
Ein Defaultwert füllt ein Feld beim Anlegen, wenn kein Wert mitkommt. Verstöße gegen Regeln sammelt Data Management vollständig und meldet sie auf einmal, jeweils mit Feld und verletzter Regel. Ein Formular kann so alle fehlerhaften Eingaben in einem Schritt markieren – auch in verschachtelt mitgeschickten Objekten.
Schon beim Modellieren prüft der Hub mit: Ungültige Namen, doppelte Felder oder ein Modell, das von sich selbst erbt, lehnt er beim Speichern ab und nennt den Grund am Feld. Was erlaubt, aber meist ein Versehen ist, markiert er mit einem Warnzeichen – etwa wenn ein auditiertes Modell auf ein nicht auditiertes zeigt.
Eigene Fachlogik an festen Stellen
Generierten Code ändert niemand von Hand. Fachlogik, die sich nicht modellieren lässt, hängen Sie über Hooks ein: vor oder nach der Datenbankänderung, je Aktion. Ein Hook kann eine Kundennummer vergeben, eine fachliche Regel prüfen oder ein Pflichtfeld noch füllen, bevor die Validierung urteilt. Lehnt er ab, wird die gesamte Anfrage zurückgerollt.
Für einzelne Werte gibt es Feld-Hooks, die sich an viele Felder in vielen Modellen hängen lassen – etwa um eine Telefonnummer in eine einheitliche Schreibweise zu bringen.
Wofür das im Alltag sorgt
Ein explizites Modell ist für Menschen prüfbar und für Werkzeuge eindeutig.
- Fachliche Regeln stehen an einer Stelle, statt über Formulare und Dienste verteilt zu sein.
- Ein Modell lässt sich jederzeit neu generieren, ohne eigene Logik zu verlieren.
- Mensch und KI arbeiten auf derselben Struktur, statt sie aus Code zu erraten.