MedCubes Framework - Data Layer

MedCubes Framework Data Layer

Generell werden alle Daten in relationalen Datenbanken gespeichert, typischerweise Microsoft SQL Server (wobei auch andere möglich sind). Aufgrund von Sicherheitseinschränkungen erlauben wir aber keinen direkten Zugriff auf die Tabellen unserer Datenbanken. Zugriff von außen ist nur möglich über gekapselte Web-Services, die auch auf dem MedCubes Framework aufbauen. Damit sind unsere Sicherheits- und Logging-Mechanismen automatisch integriert.

Um Datenzugriffe und -änderungen nachverfolgen zu können, erzeugt MedCubes automatisch so genannte History-Einträge. Hier ist sichtbar, wer die Daten geändert hat, Datum und Uhrzeit des Zugriffs und auch der alte und der neue Wert von geänderten Feldern. Man kann auch Lese-Zugriffe protokollieren. Aufgrund des zu erwartenden hohen Datenvolumens muss das aber für jede gewünschte Tabelle aktiviert werden.

Durch Einsatz einer der wichtigsten Funktionen von MedCubes, den so genannten DynamicApps, ist es möglich, die definierte Datenbank-Struktur zu erweitern. Über unser eigenes, integriertes Daten-Dictionary kann der Administrator oder Berater neue Felder oder Sub-Tabellen anlegen, ohne sich mit den eigentlichen relationalen Strukturen auskennen zu müssen. Diese Erweiterungen sind selbstverständlich nur für den ausgewählten Mandanten zugreifbar, andere Kunden können die Felder weder sehen noch bearbeiten. Zugegriffen wird auf diese Felder mit selbst gestalteten DynamicApps. Werden Reports erstellt, werden die dynamischen Felder und Strukturen voll integriert angezeigt, ohne Unterschied zu "normalen" Datenbankfeldern.

MedCubes ermöglicht diese Funktionalität, indem eine zusätzliche logische Daten-Schicht eingezogen wird. Das garantiert auch, dass Update von MedCubes-Apps bzw. Datenbankstrukturen keinen Einfluss auf diese Erweiterungen haben.

Die Daten-Layer regelt auch die Abbildung von Mandanten und Unter-Mandanten innerhalb einer Datenbank. Sie garantiert, dass nur derjenige Zugriff auf die Daten hat, der auch dazu berechtigt ist. Sowohl aus MedCubes-Apps als auch über externe Reporting-Tools.