globe with meridians Sprache: Deutsch · English

open book Regeln (serverseitig)

Java-Geschäftsregeln auf dem Server: an Ereignisse geknüpft, mit Zugriff auf Businessobjekte, Provider und die volle Nuclos-API.

REFERENZ ENTWICKLER STAND: JUL 2026 GILT FUER NUCLOS 4.2026.X

Auf dieser Seite

Was sind serverseitige Regeln?

Die Nuclos-API ermöglicht Java-basierte Geschäftsregeln, die bei bestimmten Ereignissen lesend und schreibend auf Inhalte zugreifen. Reichen die übrigen Low-Code-Mittel nicht aus, setzt du hier komplexe Validierungen, Berechnungen, Webservice-Aufrufe oder automatische Datenänderungen um.

API

Die vollständige API ist unter api.nuclos.de dokumentiert.

Menüaufruf: Konfiguration → Regelwerke → Regeln (serverseitig)

Ereignisse

EreignisRegel-Interface(s)Beispiel
NeuanlageInsertRule, InsertFinalRuleneuer Datensatz (z. B. Rechnung)
ÄnderungUpdateRule, UpdateFinalRulebestehender Datensatz (z. B. Auftrag)
LöschenDeleteRule, DeleteFinalRulebestehender Datensatz
StatuswechselStateChangeRule, StateChangeFinalRulez. B. Offen → Mahnung
ObjektgeneratorGenerateRule, GenerateFinalRulez. B. Lieferschein aus Auftrag
SchaltflächeCustomRuleBenutzeraktion im Layout
JobJobRulezeitgesteuert, wiederkehrend

Regeleditor

Der Regeleditor ist das zentrale Werkzeug zum Bearbeiten von Regeln. Für komfortable Entwicklung/Debugging gibt es zusätzlich die IntelliJ-Anbindung.

Automatische Kompilierung

Über den Schalter Automatische Kompilierung lässt sich das Kompilieren beim Speichern vorübergehend abschalten (nützlich bei voneinander abhängigen, noch nicht kompilierbaren Regeln). Achtung: Nicht kompilierte Regeln sind im Regelmanager nicht sichtbar.

Schalter „Automatische Kompilierung“ im Regeleditor.

Anwendungsspezifische Objekte

Nuclos generiert automatisch repräsentierende Objekte für Businessobjekte, Statusmodelle, Datenquellen und Reports (mit Gettern/Settern). Ändern sich diese Metadaten, lassen sich abhängige Regeln nicht mehr kompilieren – ein direkter Hinweis auf anzupassende Stellen.

BigDecimal

Kommazahl-Attribute werden als java.math.BigDecimal abgebildet. Nutze BigDecimal.valueOf(double) statt new BigDecimal(double) und bei Division stets .divide(BigDecimal, RoundingMode).

Provider (unterstützende Klassen)

Provider bieten Funktionen, um Inhalte aus Regeln heraus zu verändern: QueryProvider, StatemodelProvider, GenerationProvider, DatasourceProvider, BusinessObjectProvider, MailProvider, PrintoutProvider, ReportProvider, FileProvider.

Regeln, Unterformulare und der Regelkontext

  • In Regeln vor dem Ereignis (Insert/Update/StateChange/Generate) werden Änderungen am Kontextobjekt über Attribut-Setter automatisch übernommen; delete() auf abhängige Objekte gilt als Änderung.
  • In Final-Regeln (im Anschluss) ist zum Ändern anderer Objekte ein explizites save() nötig – das löst deren Update-/UpdateFinal-Regeln aus.

Endlosschleifen

Ein save() auf das Kontextobjekt in einer UpdateFinalRule kann eine Endlosschleife auslösen – ggf. Regelausführung selektiv ausschalten oder SaveFlags verwenden.

Verwandte Seiten

open book Regelwerke


Übersicht.

Öffnen →

gear Server Regelmanager


Regeln zuweisen.

Öffnen →

clipboard Ausführungsreihenfolge der Regeln


Reihenfolge je Aktion.

Öffnen →

  • Keine Stichwörter