Datenbankstruktur
| Diese Seite wurde automatisch aus dem Datenbank-Schema-Dump generiert und kann unvollständig oder fehlerhaft sein. |
Dieser Bereich dokumentiert die Datenbankstruktur des enaio®-Systems — also welche Tabellen im Datenbankschema vorhanden sind, welche Spalten sie führen und wie die wiederkehrenden Muster der Objekt-, Stamm- und Register-Tabellen zusammenhängen. Das Schema ist datenbankunabhängig — enaio® unterstützt mehrere relationale Datenbankbackends (z. B. Microsoft SQL Server, Oracle). Datentypen werden in dieser Doku in der SQL-Server-Schreibweise (int, nvarchar, datetime, bigint, smallint, real, image) angegeben; bei Oracle entsprechen sie sinngemäß NUMBER, NVARCHAR2, DATE, NUMBER(19), NUMBER(5), BINARY_FLOAT und BLOB.
Die hier dokumentierten Strukturen sind die unmittelbare physische Speicherform; sie werden in der Regel nicht direkt modifiziert (außer durch ado.ExecuteSQL-Skripte für administrative Korrekturen), sondern über die DMS-, Standard- und Workflow-Engines bearbeitet. Diese Doku ist als Referenz für Administratoren, Reportentwickler und Integrationsentwickler gedacht.
1. Schema-Konventionen
Die Datenbank verwendet eine Mischung aus festen Systemtabellen und typspezifischen Tabellen pro Objekttyp. Folgende Konventionen sind durchgängig:
1.1. Suffix-Schema
Für jeden konfigurierten DMS-Objekttyp existieren mehrere Tabellen, deren Name eine fortlaufende Nummer X trägt. X entspricht dem Haupttyp (haupttyp-Spalte) + 1 — object1 enthält also Objekte mit haupttyp = 0, object17 solche mit haupttyp = 16. Die volle Objekttyp-ID (haupttyp * 65536 + untertyp) ist in Objekttyp-ID beschrieben.
| Name | Inhalt |
|---|---|
|
Hauptobjekttabelle. Hält je Datensatz ein Objekt vom Typ X. Enthält gemeinsame Systemfelder (id, zeitstempel, Status, Berechtigungs-IDs, …) plus typspezifische Indexfelder. |
|
Rights-Tabelle. Hält Berechtigungseinträge pro Objekt (komplementär zum globalen Sicherheitssystem via |
|
Shadow-Tabelle für Indexdaten-Historie. Hält die jeweils vorherigen Indexdatenstände vor jeder Änderung. Gemeinsam ist nur |
|
Tabellenfeld-Daten. Eine Tabelle pro auf dem Objekttyp X definierten Tabellenfeld Y (Grid-Feld); enthält pro Zeile des Grids einen Datensatz. Gemeinsame Felder: |
|
Shadow-Variante zu Tabellenfeldern. Gemeinsam: |
1.2. Spaltennamen-Konvention
Indexfelder folgen einer historisch gewachsenen, typabhängig-positionellen Notation (ungarische Schreibweise):
-
feld1,feld2, … — Textfelder (nvarchar) -
zahl1,zahl2, … — Ganzzahlfelder (int/smallint) -
datum1,datum2, … — Datumsfelder (datetime) -
real1,real2, … — Dezimal-/Fließkommafelder (decimal/real)
Die Zuordnung „Spaltenname → semantisches Indexfeld" ist pro Objekttyp unterschiedlich konfiguriert und über die DMS-Objektdefinition zugänglich (dms.GetObjDef).
Systemfelder hingegen verwenden sprechende deutsche Namen (anleger, angelegt, archiviert, zeitstempel, medium_doc, …) — ein historisches Erbe.
2. Hierarchische Objekttypen
Die folgenden drei Seiten beschreiben jeweils das Muster — gemeinsame Felder, Rights-, Shadow- und Tabellenfeld-Varianten — nicht einzelne nummerierte Tabellen.
-
Stammakten (
stammX) — oberste Hierarchieebene (Ordner / Fall / Projekt). -
Register (
registerX) — Untergliederung innerhalb einer Stammakte. -
Dokumentobjekte (
objectX) — Dokumente (tragen Dateiinhalte, Versionen, Annotationen). -
sdrel — Strukturdaten-Beziehungstabelle: Stammakte → Register → Dokument.
-
osparregrel — Verschachtelung von Registern innerhalb eines Ordners.
7. Annotationen
-
annotations — Annotationen (Slides, Anmerkungen).
-
ann_groups — Annotation-Gruppenzuordnung.
8. Externsysteme
-
varcsystems — Varc-/Konnektor-Konfiguration.
11. Berechtigungen und Profile
Die Workflow-Organisationsobjekte (osorg*) sind unter Workflows dokumentiert.
|
13. DMS-Objekttypen, Indexfelder und Strukturen
-
osctrlpages — Page-Controls aus der Objektdefinition.
-
oslistctrl — erlaubte Verschachtelung der Objekttypen aus der Objektdefinition.
-
oslanguages — konfigurierte Sprachen aus der Objektdefinition.
24. Workflows
Die Workflow-Engine speichert Modelle, laufende Prozesse, Historien und Verwaltungsdaten in eigenen Tabellen mit Präfix oswf. Historien-Tabellen tragen zusätzlich das Präfix oswfh. Die Workflow-Organisation (Benutzer, Rollen, Abteilungen, Klassen und Attribute) liegt in den osorg*-Tabellen und wird sowohl von der Workflow-Engine als auch vom DMS-Sicherheitssystem genutzt.
Modelle und Definitionen
Masken und Listen-UI
Prozesse und Aktivitäten (Laufzeit)
Organisation und Bearbeiter
Workflow-spezifische Bearbeiter-Zuordnungen:
Organisations-Stammdaten (osorg*) — Benutzer, Rollen, Abteilungen, Klassen, Attribute: