Zum Ende der Metadaten springen
Zum Anfang der Metadaten

Sie zeigen eine alte Version dieser Seite an. Zeigen Sie die aktuelle Version an.

Unterschiede anzeigen Seitenhistorie anzeigen

« Vorherige Version anzeigen Version 2 Nächste Version anzeigen »

Schemata ermöglichen es eigene Datenbanktabellen zu schaffen.

Datenbank-Schemata und Tabellenstrukturen definieren ausschließlich Tabellen und deren Beziehung zueinander. Mit der Modelling können Formularmasken mit Feldern und Feldgruppen für diese Tabellen erstellt werden.

Datenpflege

Folgende Datenpflege ist für die Erstellung eines funktionsfähigen Schemas erforderlich.

Datenbank-Schemata

Ein Datenbank-Schema-Datensatz stellt ein Schema als ganzes dar. Einem Datenbank-Schema-Datensatz müssen alle diesem Schema zugehörigen Tabellenstrukturen als Kind verknüpft werden.

FeldbezeichnungBeschreibung
Identifikator

Ein eindeutiger Identifikator für dieses Schema. Dieser Identifikator wird auch als Bestandteil der Breadcrumb genutzt und sollte daher möglichst aussagekräftig sein.

Es sind ausschließlich Groß- und Kleinbuchstaben von A bis Z und Zahlen von 0 bis 9 gestattet. Nach den brandbox-Code-Konventionen sollte ein Identifikator mit einem Kleinbuchstaben anfangen.

NameDer organisatorische Name dieses Schemas.

Dashboard-Kacheln

Die Kacheln repräsentieren die Kacheln die in brandbox angezeigt werden. In den Kacheln können Tabellen gruppiert und sortiert werden.

Tabellenstrukturen

Ein Tabellenstruktur-Datensatz stellt eine einzelne Datenbanktabelle dar. Wird einem Tabellenstruktur-Datensatz eine Tabellenstruktur als Kind verknüpft so wird eine Beziehung zwischen den beiden Tabellen aufgebaut welche es ermöglicht Datensätze beider Tabellen miteinander zu verknüpfen.

FeldbezeichnungBeschreibung
Identifikator

Der eindeutige Identifikator dieser Tabellenstruktur. Dieser Identifikator wird unter anderem genutzt um die Datenbanktabelle dieser Struktur programmatisch anzusprechen.

Es sind ausschließlich Groß- und Kleinbuchstaben von A bis Z und Zahlen von 0 bis 9 gestattet. Nach den brandbox-Code-Konventionen sollte ein Identifikator mit einem Kleinbuchstaben anfangen.

Entspricht TabelleErmöglicht eine Auswahl aller von brandbox bereitgestellten Systemtabellen. Sollte hier eine Auswahl getroffen werden, wird dieser Tabellenstruktur-Datensatz als Platzhalter für die gewählte Tabelle gesehen. Es ist somit möglich eine Beziehung zwischen einer brandbox Systemtabelle und einer benutzerdefinierten Tabellenstruktur zu definieren.
Name

Der Name dieser Tabellenstruktur und gleichzeitig der Anzeigename der späteren Datenbanktabelle.

Der Name einer Tabellenstruktur kann in alle verfügbaren Systemsprachen übersetzt werden.

Formularmaske

Auswahl aller zur Verfügung stehenden Formularmasken aus der Modelling. Die gewählte Formularmaske bestimmt die Felder und Feldgruppen dieser Tabellenstruktur bzw. Datenbanktabelle.

Sollte die gewählte Formularmaske ausschließlich für eine Tabellenstruktur genutzt werden, so kann das Feld "Tabellen" im Formularmasken-Datensatz ausgelassen werden.

Dashboard-KachelAuswahl aller zur Verfügung stehenden Dashboard-Kacheln. Die Tabelle wird in der gewählten Dashboard-Kachel angezeigt.
Position in der Dashboard-KachelGibt die Position in der Dashboard-Kachel an.
Bildspalte

Auswahl eines Feldes aus der Datenmodellierung vom Typ "Dateiauswahl". Diese Information wird unter anderem für die Kachel-Ansicht in brandbox genutzt.

Die ausgewählte Spalte muss mit der Formularmaske von dieser Tabellenstruktur verknüpft sein.

AkzentfarbeAuswahl einer möglichen Akzentfarbe für die Tabellenstruktur. Diese Auswahl ist optional und hat ausschließlich optische Auswirkungen.
AkzentsymbolAuswahl eines Symbols welches innerhalb der brandbox-Oberfläche neben dieser Tabellenstruktur gezeigt werden soll. Auch diese Auswahl hat nur optische Auswirkungen.
Is versionierbarWird eine Tabellenstruktur bzw. Tabelle als "versionierbar" gekennzeichnet, so wird für jeden Datensatz dieser Tabelle eine detailiierte Änderungshistorie angelegt.
Ist KonfigurationstabelleWenn eine Tabellenstruktur als Konfigurationstabelle ausgezeichnet wird, darf diese nur einen Datensatz enthalten. Zudem kann dann nur dieser eine Datensatz bearbeitet werden.
Kinder werden nicht gruppiertStandardmäßig werden Kind-Beziehungen in der brandbox-Oberfläche nach ihren jeweiligen Tabellen gruppiert. Diese Einstellung hebt dieses Verhalten für die Kind-Beziehungen dieser Tabellenstruktur auf und zeigt alle Kind-Beziehungen in einer gemeinsamen Liste an.

Datenbankschema aktualisieren

Sollten Anpassungen an den beiden Schemata-Tabellen durch die Datenpflege vorgenommen worden sein, so müssen diese Änderungen aus der Datenpflege übernommen und angewendet werden. Hierzu steht in der Toolbar beider Schemata-Tabellen ein Button zu Verfügung. Über diesen kann der Aktualisierungsvorgang manuell gestartet werden.

Dieser Aktualisierungsvorgang wird von brandbox auch nach einem Update des Systems durchgeführt.

Anpassungen an den verwendeten Formularmasken bei Tabellenstrukturen müssen wie in der Datenmodellierung beschrieben übernommen werden.

Auswirkungen einer Aktualisierung des Datenbankschemas

Wird der o. g. Aktualisierungsvorgang ausgelöst werden die gepflegten Datenbank-Schemata und deren verknüpften Tabellenstrukturen zum einen Tabellen in die Datenbank überführt und zum anderen werden entsprechende Code-Dateien erzeugt.

Anpassungen an der Datenbank

Jede mit einem Datenbank-Schemata verknüpfte Tabellenstruktur welche keine gewählte Entsprechung besitzt wird als Datenbanktabelle angelegt. Als Name dieser Tabelle wird der vergebene Identifikator in einer umgewandelten Form genutzt. Diese Tabellen beinhalten die in der abstrakten Entity \brandbox\pim\datapool\lib\pimEntityAbstract beschriebenen Spalten. Zudem werden entsprechende Übersetzungstabellen angelegt, welche sich an das abstrakte Entity \brandbox\pim\datapool\lib\pimTranslationEntityAbstract halten.

Tabellen welche in der Datenbank existieren aber keine Entsprechung in Form einer Tabellenstruktur, verknüpft mit einem Datenbank-Schemata-Datensatz, besitzen werden während des Aktualisierungsprozesses aus der Datenbank gelöscht.

Erzeugung von Code-Dateien

Für jeden Datenbank-Schemata-Datensatz wird ein Ordner unter temp/plugin/scheme/ angelegt. Als Name dieses Ordners wird der Identifikator des Schemas genutzt. Es werden jeweils die für brandbox notwendigen Code-Dateien erzeugt, darunter fallen auch die entsprechenden Entity-Klassen für die Doctrine-Implementation von brandbox. Als namespace-Basis wird immer brandbox\scheme\[Identifikator des Schemas] genutzt.

Programmatische Verwendung

Die erzeugten Datenbanktabellen sowie deren Code-Dateien können wie Systemtabellen von brandbox genutzt und im Code angesprochen werden.

Tabellen welche durch Schemata angelegt wurden benötigen immer eine Referenz zu einem Datenpool.

  • Keine Stichwörter