Mithilfe der Objektregeln können Sie beispielsweise eine automatische Datenkorrektur durchführen oder Funktionalität hinzufügen, wenn Änderungen an der Datenbank vorgenommen werden. Es gibt clientseitige und serverseitige Objektregeln.
Elementregeln sind Methoden und Trigger, durch die Daten gemäß vordefinierter Algorithmen verarbeitet werden. Anhand von Regeln können Sie beispielsweise komplexe Konsistenz- und Abhängigkeitsprüfungen bei bestimmten Ereignissen, wie beispielsweise vor dem Einfügen oder nach dem Ändern eines Elements, durchführen. Sie können einige Aspekte der in Fachschalen enthaltenen Regeln bearbeiten.
Objektregeln gehören zum Lieferumfang von AutoCAD Map 3D-Toolset. Wenn Sie jedoch über Erfahrungen mit PL/SQL-Triggern verfügen, können Sie eigene serverseitige Objektregeln über Oracle-Trigger und die API definieren. Lesen Sie hierzu die entsprechenden Handbücher.
Benutzer mit einem .NET-Entwickler-Kit (und grundlegenden .NET-Kenntnissen und -Erfahrung) können eigene clientseitige Objektregeln erstellen.
Die Konfiguration der Objektregeln wird in der Fachschale in den Systemtabellen TB_RULE_* gespeichert. Objektregeln werden in der Systemtabelle TB_RULE_DEF in der Fachschale gespeichert.
Sie können eine vorhandene Regel einer Objektklasse zuweisen sowie die Eigenschaften einer vorhandenen Regel bearbeiten.
Eigenschaften von Objektregeln | Beschreibung |
---|---|
Objektklasse | Name der Objektklasse |
Server (PL/SQL) Objektregeln für Client (.NET) können server- oder clientseitig ausgeführt werden. |
Klicken Sie auf die entsprechende Registerkarte. Sie können nur serverseitige Objektregeln definieren. |
Angewendete Regelwerke | Liste der Objektregeln, die der Objektklasse zurzeit zugeordnet sind. Die zugeordneten Objektregeln werden in der Systemtabelle TB_RULE_BASE aufgezeichnet. In der Tabelle TB_RULE_FCLASSTYPE wird definiert, welche Objektregeln für die einzelnen Objektklassentypen verfügbar sind. Beispiel: Die Berechnung der Länge ist zwar ein gültiger Vorgang für Polylinien-Objektklassen, jedoch nicht für Punktobjektklassen. |
Priorität | Zum Definieren der Ausführungsreihenfolge für die Objektregeln. Eine Objektregel mit einem niedrigeren Prioritätswert, wird vor Regeln mit einem höheren Wert ausgeführt. Beispiel: Validieren der Geometrie eines Objekts, bevor die Fläche berechnet wird. Mithilfe der Nach-oben- bzw. Nach-unten-Schaltfläche können Sie die Reihenfolge und Priorität ändern. |
Regelwerkdefinitionen | Listet alle für die aktuelle Objektklasse verfügbaren Objektregeln (TB_RULE_DEF) und Regelgruppen (TB_RULE_GROUP) auf. Wenn Sie eine Gruppe auswählen, werden alle darin enthaltenen Regeln zur Liste Angewendete Regelwerke hinzugefügt. Anmerkung: Es sind nur jene Objektregeln einzeln verfügbar, die nicht Teil einer Gruppe sind.
|
Neue Gruppe | Eine Gruppe kann mehrere Objektregeln enthalten, die andere Regeln definieren, z. B. eine Before- und eine After-Regel. Die Serverregeln müssen den Einschränkungen für Oracle-Trigger entsprechen. Dies bedeutet konkret, dass Zeilentrigger nur für die geänderte Zeile Tabellen in Jobs abfragen oder ändern dürfen. Aus diesem Grund werden die meisten serverseitigen Regeln als Regelgruppe implementiert. Eine Gruppe von Objektregeln besteht aus einer vor der Aktion für die Zeile ausgeführten Regel, die die ROWID von geänderten Objekten in eine temporäre Tabelle einfügt, und aus einer nach der Aktionsanweisung ausgeführten Regel, die für die eigentliche Arbeit zuständig ist. Sie können nur Objektregeln hinzufügen, die noch keiner anderen Regelgruppe angehören. Zudem können Sie keine Systemobjektregeln zu einer neuen Kundenregelgruppe hinzufügen. |
Ereignis | Ereignis, auf das eine Objektregel reagiert. |
BI | Vor dem Einfügen |
BU | Vor dem Aktualisieren |
BD | Vor dem Löschen |
AI | Nach dem Einfügen |
AU | Nach dem Aktualisieren |
AD | Nach dem Löschen |
Schritte in diesem Arbeitsablauf: