Master-Detail |
Anfang Zurück Vor |
Letzte Änderung 13.02.2014
Master-Detail ist eine häufig verwendetes Filter-Konzept, mit der sich ein Suchergebnis systematisch und auf sehr übersichtliche Weise eingrenzen lässt. Bei einer Master-Detail Ansicht werden (1:n) Daten hierarchisch von oben nach unten gefiltert angezeigt, wobei jede Hierarchie mit einer eigenen GUI-Komponente abgebildet wird. Die Master-Komponente übernimmt dabei das Filtern der Daten, während die Detail-Komponente das Suchergebnis anzeigt. Der Aufbau einer Master-Detail Ansicht wird immer von dem zugrunde liegenden Entity-Relationship (ER) Modell abgeleitet, genau genommen von Tabellen, die miteinander 1:n verknüpft sind, z.B. Tabelle Hersteller (Master, da Kardinalität 1) und Tabelle Modelle (Detail, da Kardinalität n). Bei komplexeren Hierarchien, z.B. Hersteller, Modelle, Fahrzeuge, können die Hierarchien durch Verkettung mehrerer GUI-Komponenten abgebildet werden. Umso mehr Hierarchien dabei ein Master-Detail Konstrukt abbildet, desto genauer lässt sich damit das Suchergebnis eingrenzen.
In XDEV 5 können Sie eine Master-Detail Ansicht sehr leicht und völlig ohne Programmierung konstruieren. Dazu müssen Sie lediglich zwei GUI-Komponenten miteinander verknüpfen und über Eigenschaft Master-Komponente die Master-Komponente festlegen. Als Master-Detail Komponenten können Sie List- und ComboBoxen sowie Tables verwenden. Anschließend müssen Sie die Komponenten nur noch mit einer entsprechenden Virtuellen Tabelle verknüpfen aus der die Daten kommen werden. Mit Setzen der Option Daten beim Start laden werden die Master-Detail Komponenten sogar automatisch mit Daten gefüllt. Diese Funktion setzt jedoch voraus, dass Sie ein ER-Diagramm in XDEV 5 angelegt haben, in dem die Verknüpfungen zwischen den einzelnen Tabellen definiert sind.
Für die Umsetzung einer Master-Detail Ansicht können Sie verschiedene Auswahl-Komponenten beliebig miteinander verknüpfen.
Die Hierarchie des Master-Detail Konstrukts wird von 1:n Verknüpfungen im ER-Diagramm abgeleitet.
1.Fügen Sie eine ComboBox in die Arbeitsfläche, ziehen Sie die Virtuelle Tabelle Hersteller per Drag&Drop auf die ComboBox und selektieren Sie in den Eigenschaften die Option Daten beim Start laden. 2.Fügen Sie darunter eine zweite ComboBox in die Arbeitsfläche ein und ziehen Sie die Virtuelle Tabelle Modelle per Drag&Drop auf die zweite ComboBox 3.Verknüpfen Sie nun beide ComboBoxen miteinander. Klicken Sie dazu in den Eigenschaften der zweiten ComboBox bei Master-Komponente auf 4.Fügen Sie darunter eine Table in die Arbeitsfläche ein und ziehen Sie die Virtuelle Tabelle Fahrzeuge per Drag&Drop auf die Table. 5.Verknüpfen Sie nun die Table mit der zweiten ComboBox. Klicken Sie dazu in den Eigenschaften der Table bei Master-Komponente auf
Der Formular-Assistent kann ein Formular lediglich von einer einzigen Virtuellen Tabelle, z.B. Fahrzeuge, ableiten und automatisch generieren. Master-Detail Filter, welche die Auswahlmöglichkeiten einzelner Formular-Komponenten reduzieren und ein Formular dadurch in vielen Fällen leichter benutzbar machen, sind dagegen optionale Steuerelemente die Sie bei Bedarf selber ergänzen müssen, z.B. die Auswahl eines Herstellers zur Eingrenzung der Auswahl von Modellen.
●ER-Diagramm HERSTELLER - MODELLE - FAHRZEUGE Das Datenfeld MODELL ist direkt mit der Haupttabelle Fahrzeuge verknüpft, sodass dafür eine Formular-Kompnente generiert werden kann. Das Datenfeld MARKE ist nur indirekt mit der Haupttabelle Fahrzeuge verknüpft, sodass dafür keine Formular-Komponente generiert werden kann.
●GENERIERTES FORMULAR "FAHRZEUGE" Beim generierten Formular muss eine Marken-Auswahl bei Bedarf manuell hinzugefügt werden.
1.Lassen Sie sich zuerst ein Formular generieren. Ziehen Sie dazu die Virtuelle Tabelle Fahrzeuge per Drag&Drop in die Arbeitsfläche ein und übernehmen Sie die Standardeinstellungen im folgenden Formular-Assistenten. 2.Fügen Sie eine ComboBox über der Modell-ComboBox ein. Fügen Sie zur Beschriftung rechts daneben ein Label ein und benennen Sie dieses in MARKE um. 3.Klicken Sie im Projektmanagement die Virtuelle Tabelle Hersteller an und ziehen Sie diese per Drag&Drop auf die neue ComboBox bei MARKE, um diese bei der Initialisierung mit Marken zu füllen. 4.Klicken Sie nun die Modell-ComboBox an. Klicken Sie in den Eigenschaften bei Master-Komponente auf und klicken Sie dann die neue Marken-ComboBox an, um diese als Master-Komponente zu definieren.
Wenn das Formular mit einem Datensatz gefüllt wird, wird auch die verknüpfte Master-ComboBox korrekt angesteuert, sodass Sie dies nicht aufwändig programmieren müssen.
|