Ersteinrichtung
Einrichtung:
Nun nachdem der Conatiner und Co läuft.
Haben wir de Loginseite, bei einer frischen installation ist der Wartungsmodus aktiv.
Nur im Wartungsmodus können Apps erstellt oder verändert werden
Benutzername und Kennwort sind standardmäßig admin
Nach dem Login bekommen wir eine Seite wo wir drauf hingewiesen werden, das es noch keien Apps gibt. Wir könenn Standard apps installieren um Beispiele zu bekommen, oder aus der repo oder unsere vielelicht schon erstellte app aus einer datei.
Möchten wir gar nichts von allen dreien, haben wir oben links ein Menü das Häuschen die App Oberfläche, da wir keine Apps haben bekämen wir wieder die Seite von Anfang oder das Symbol Server mit Zahnrad für die Einstellungen. Wie Benutzer backups etc. Wir installieren mal gar nichts und Bauen eine App von Scratch:
Wir klicken auf das Zahnrad und gehen dann zu logins, dort ändern wir das Passwort für den Admin.
Nun gehen wir unter System und enabled den Builder mode, damit wir Apps bauen können
Nun bekommen wir einen Hinweis, das veränderung an einer App mit Datenverlust zu rechnen ist.
Dank Docker können wir uns mehrere Instanzen bauen und die Apps nachher in Produktiv importieren.
Auf close klicken
Dann auf Apply changes klicken
Jetzt haben wir ein neues Symbol in der Leiste oben links. Dieses anklicken
Dort haben wir unsere Liste von Anwendungen, da wir noch keine haben, klicken wir auf new um eine Neue zu erstellen.
Wir vergeben einen Namen für unsere App, hier "lizenzmanager" als Besipiel
Die Namen müssen immer alle klein geschrieben sein und dürfen keine Sonderzeichen enthalten.
Nur zahlen und Buchstaben und muss mit Buchstaben beginnen.
Nun klicken wir auf create
Jetzt steht die App in der Liste mit der Versionsnummer dahinter.
hier Version : v0
Wir klicken da drauf um unsere App zu bearbeiten
Das Übersichtsfenster. Dort wird die Datenbank, dann die Formulare, wenn gewünscht ein Seitenmenü und wenn auch gewünscht mehrere Benutzer angelegt sind, die Rechte verwaltet werden.
Sprachen können auch noch definiert werden.
Wir fangen mit der Datenbank an, klicken auf Define Relations
Da es noch keine Relation gibt klicken wir auf New.
Relations sind Tabellen
Nun vergeben wir einen Namen, hier Kunden
Man kann die Daten auch verschlüsseln. ;-)
Dann auf create klicken
Nun haben wir unsere Tabelle in der liste drauf klicken und wir können die spalten definieren
Die Spalte ID wird immer vor angelegt, durck klicken auf new legen wir eine neue Spalte an.
Nun spalten Namen eingeben, Typ auswählen, hier Text.
Mit must have value wird es ein Pflichtfeld
Es kann auch ein Titel mit der Übersetzung erstellt werden, aber dazu später. Iwr können hier sonst schon mal de_de eintragen, wenn gewünscht.
Dann auf Create + new wenn wir eine weitere Spalte anlegen wollen, ansonsten auf create.
Nun haben wir unsere Tabelle. Alle Spalten mit * sind Pflichtfelder
Nun erstellen wir eine zweite Tabelle mit dem Namen lizenzen.
Dazu im Menü links auf Relations klicken und dann wieder auf New
Das erste Feld heißt lizenzschluessel und ist ein Pflichtfeld und typ text, create+new anklicken
Das zweite Feld wird eine Verbindung zur Kundentabelle. Die Spalte heißt kunde und ist eine 1:N Verbindung.
Ein Kunde kann mehre Lizenzen haben oder umgekehrt eine Lizenz kann nur einen Kunden haben.
Namen und typ auswählen n:1
Dann bei Relationship die Tabelle kunden auswählen.
Action when changed und deleted, restrict aus.
klicken dann auf create.
Die Werte in diesem Dropdown-Menü beziehen sich auf die Aktionen, die in einer relationalen Datenbank
(normalerweise bei Fremdschlüsseln) ausgeführt werden, wenn eine referenzierte Zeile geändert oder gelöscht wird.
Hier ist, was die einzelnen Optionen bedeuten:
NO ACTION: Wenn ein Datensatz, auf den verwiesen wird, gelöscht oder geändert wird, wird keine spezifische
Aktion ausgeführt. Falls die referenzierte Zeile jedoch noch verwendet wird, kann die Operation
fehlschlagen und eine Fehlermeldung ausgeben.
CASCADE: Diese Option sorgt dafür, dass alle verbundenen Datensätze automatisch ebenfalls gelöscht oder
aktualisiert werden. Wenn z. B. ein Datensatz in der Haupttabelle gelöscht wird,
werden alle verknüpften Datensätze in der abhängigen Tabelle ebenfalls gelöscht.
SET NULL: Wenn der referenzierte Datensatz gelöscht oder geändert wird, wird der Fremdschlüssel in der
abhängigen Tabelle auf NULL gesetzt. Dies setzt voraus, dass das Fremdschlüsselfeld NULL-Werte zulässt.
RESTRICT: Diese Option verhindert die Löschung oder Aktualisierung des referenzierten Datensatzes,
solange noch eine Verbindung zu abhängigen Datensätzen besteht. Es gibt also eine Einschränkung,
und die Operation wird nicht ausgeführt, um die Integrität der Datenbank zu wahren.
Jetzt sieht unsere Lizenz Tabelle so aus
Nachher bei den Icons, kann man hier auch icons runterladen.
Darauf achten das Icon Transparents hat
Eine Vollständige Liste aller MDI Icons (MaterialDesignIcons) https://materialdesignicons.com/






















