![]() |
Datenbank: ADS • Version: 8 • Zugriff über: ADS-Komponenten
Ein Query auf drei Grids verteilen
Hallo zusammen,
ich habe ein Query und möchte die Datenmenge auf drei DBGrids aufteilen. Als Kennzeichen für die Aufteilung soll ein Feld in der Datenmenge dienen. Da ich jetzt schon ein paar erfolglose Versuche hinter mir habe, hier die Frage, ob das überhaupt geht. mfG Mike |
Re: Ein Query auf drei Grids verteilen
Da wäre es ja sinnvoller 3 Queries zu verwenden
|
Re: Ein Query auf drei Grids verteilen
Ist das nicht etwas viel Aufwand für eine "einfache" Aufteilung der Daten ?
Könnte man nicht einen Filter auf das DBGrid setzen ? |
Re: Ein Query auf drei Grids verteilen
Du kannst dem DBGrid schon irgendwie mitteilen, welche Spalten es anzeigen soll.
Aber das mit den drei Queries finde ich auch besser. |
Re: Ein Query auf drei Grids verteilen
Zitat:
So wie ich dein Posting aber verstehe, willst du eine horizontale Aufteilung (keine Selektion der Felder, sondern der Datensätze) anhand des Inhaltes eines der Felder!? In diesem Fall folge dem Rat der anderen und schreib 3 Queries. Nachtrag: Du kannst auf eine AdsQuery auch einen Filter anlegen, aber das betrifft dann alle drei Grids gleichermaßen. Ein Grid kann nicht filtern, nur die zugrundeliegende Datenmenge. |
Re: Ein Query auf drei Grids verteilen
Zitat:
Zitat:
Zitat:
Meine Lösung sieht jetzt so aus: Ich habe das EINE Query und durchlaufe die gesamte Datenmenge (WHILE ...). In einer Spalte der Datenmenge steht ein Wert. In Abhängigkeit von diesem Wert befülle ich dann drei StringGrids. Da die Daten nur angezeigt werden sollen, ist das sicher einfacher, als drei fast gleiche Queries mit drei anhängenden DBGrids und drei DataSources zu verwenden. Man stelle sich mal vor, ich müßte die SQL-Abfrage (so etwa 100 Zeilen mit Parameter und Unions) ändern. So habe ich nur eine Änderung statt drei zu machen. Mike |
Re: Ein Query auf drei Grids verteilen
Richtig.
StringGrid selber befüllen ist auch ne gute Alternative. |
Re: Ein Query auf drei Grids verteilen
How to cook drei Grids aus einer Query.
1x query 3x TProvider (an die query beppseln) 3x TClientDataset (mit individuellen filtern) 3x Tdatasource an die TClientDatasets 3x TDBGrid an die TDatasourcen Tipp: Die Reihenfolge, wie man die Clientdatasets und die Query öffnet und schließt ist entscheidend. WEnn man zur Designzeit damit rumspielt, immer wieder die TClientdatasets per Rechte-Maus-Taste leeren (Clear Data oder so) 3 Queries wären zwar einfacher, aber wenn die Query an sich schon aufwändig ist, ist meine Lösung performanter. |
Re: Ein Query auf drei Grids verteilen
Zitat:
|
Re: Ein Query auf drei Grids verteilen
Hallo,
das mit 100 Zeilen ändern -> grosser Aufwand kann ich nicht so gelten lassen. Du kannst ja eine CreateQuery(TheQuery: TAbsQuery) schreiben. Die erzeugt den Query-Text (per SQL.Add) für die 3 Queries. Heiko |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:58 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz