Automatisierte Queries |
Anfang Zurück Vor |
Letzte Änderung 06.01.2014
Virtuelle Tabellen sind bereits mit Abfragelogik ausgestattet, mit der sich sämtliche Standardabfragen für die ungefilterte Ausgabe von Listen mit XdevTables,XdevListBox, XdevComboBox etc., automatisiert im Hintergrund durchführen lassen. Dazu müssen Sie lediglich die Virtuelle Tabelle mit einer GUI-Komponente verknüpfen, indem Sie die Virtuelle Tabelle aus dem Projektmanagement per drag&drop heraus auf die GUI-Komponente ziehen. Für die automatische Datenbankabfrage ist jedoch die Eigenschaft Daten beim Start laden zuständig die bei der Verknüpfung einer Virtuellen Tabelle mit einer GUI-Komponente automatisch in den Eigenschaften der GUI-Komponente gesetzt wird. Bei der Initialisierung der GUI-Komponente wird dann eine Datenbankabfrage auf die entsprechende Datenbanktabelle abgesetzt, das Abfrageergebnis wird in der Virtuellen Tabelle zwischengespeichert und automatisch von der verknüpften GUI-Komponente auf der Oberfläche ausgegeben. Des weiteren können Sie festlegen, welche Spalten der Virtuellen Tabelle in der GUI-Komponente angezeigt werden sollen.
1.Fügen Sie eine XdevTable in die Arbeitsfläche ein und verbreitern Sie diese. 2.Klicken Sie die Virtuelle Tabelle Fahrzeuge im Projektmanagement an und ziehen Sie diese per drag&drop auf die XdevTable, wodurch die Virtuelle Tabelle Fahrzeuge in den XdevTable-Eigenschaften bei Virtuelle Tabelle hinterlegt wird und die Spalten der Virtuellen Tabelle im GUI-Builder angezeigt werden. 3.Übernehmen sie die automatisch gesetzte Eigenschaft Daten beim Start laden.
Die programmatische Verknüpfung einer Virtuellen Tabelle mit einer GUI-Komponente erfolgt mit Hilfe der Methode setModel( ), die von sämtlichen GUI-Komponenten zur Verfügung gestellt wird. Die zu verknüpfende Virtuelle Tabelle wird dabei als Parameter übergeben, z.B. table.setModel(Fahrzeuge.VT). Mit der Zuweisung einer Virtuellen Tabelle werden die Daten der Virtuellen Tabelle automatisch von der GUI-Komponente angezeigt, sofern diese bereits Daten enthält.
Falls die Virtuelle Tabelle noch keine Daten enthält, können Sie eine zweite Variante (Überladung) der setModel( ) Methode verwenden, die eine Abfrage auf die jeweilige Datenbanktabelle durchführt, z.B. setModel(VirtualTable vt, String columns, boolean queryData). Mit columns gegben Sie als Zeichenkette alle Spalten an, die in der XdevTable sichtbar sein sollen, z.B. "ID, MODELL". Dennoch werden bei der Abfrage immer alle Spalten selektiert. Mit true legen Sie fest, dass die Datenbankabfrage durchgeführt wird. Mit false wird lediglich die Virtuelle Tabelle mit der GUI-Komponente verknüpft und ggf. vorhandene Daten angezeigt, eine Datenbankabfrage erfolgt jedoch nicht.
Alle GUI-Komponenten die Daten anzeigen können, stellen eine setModel( ) Methode zur Verfügung, mit der Sie eine Virtuelle Tabelle zuweisen können. Je nach Komplexität der Komponente müssen entsprechende Parameter übergeben werden: ●XdevTable - table.setModel(vt) ●XdevComboBox - comboBox.setModel(vt,itemCol,dataCol) ●XdevListBox - listBox.setModel(vt,itemCol,dataCol) ●XdevFormular - formular.setModel(row,vt) ●XdevTree - tree.setModel(vt,rootsColName,rootsID,idColName,ownerColName,captionColName,dataColName)
|