Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Darstellung und Umsetzung DBGrid mit Pager (https://www.delphipraxis.net/194837-darstellung-und-umsetzung-dbgrid-mit-pager.html)

ernschd 12. Jan 2018 10:00

Darstellung und Umsetzung DBGrid mit Pager
 
Hallo,

ich wollte mal nachfragen, wie ihr mit folgender Problematik umgehen würdet: in einer Anwendung wird ein DB-Grid mit vielen Datensätzen angezeigt (zu Beginn ca. 40.000).
Der Anwender soll davon nur einen Teil sehen und den Rest bei Bedarf. Meiner Meinung nach eine übliche Aufgabe.

Bei einer Webseite würden z.B. 50 oder 100 Einträge in Kombination mit einem Pager zum Blättern angezeigt werden.
Bei DB-Grids scheint dies eher unüblich zu sein (oder ich habe das Konzept nicht richtig verstanden).
In meinen verfügbaren Grids (TMS, DevExpress) werden anscheinend alle Datensätze in das Grid geladen und dort gefiltert bzw. wird mit einer Navigation-Bar durchgeblättert.

Wie geht ihr mit vielen Daten um, die dargestellt werden sollen?

Danke und Grüße

Jasocul 12. Jan 2018 10:21

AW: Darstellung und Umsetzung DBGrid mit Pager
 
Zitat:

Zitat von ernschd (Beitrag 1390867)
Wie geht ihr mit vielen Daten um, die dargestellt werden sollen?

Kurz gesagt, indem ich brauchbare Komponenten verwende. :wink:

Das DBGrid dient nur zur Visualisierung. Das DataSet liefert die Daten. Brauchbare DataSets haben zum Beispiel die Eigenschaft, nur einen Teil der Daten aus der DB zu holen und erst bei Bedarf nachzuladen. Also zum Beispiel beim Scrollen in einem DBGrid. Die Anzahl der Datensätze kann man dann voreinstellen (Bei mir FetchRows). Dadurch werden nicht 40.000 Sätze geholt, sondern immer nur ein kleiner Block. Je nach Komfort kann so ein DataSet noch deutlich mehr bieten. Aber das DBGrid hat damit eigentlich nichts zu tun.

Das Standard-TQuery kann das meines Wissens nicht. Allerdings habe ich das auch seit Jahren nicht mehr verwendet.

ernschd 12. Jan 2018 10:24

AW: Darstellung und Umsetzung DBGrid mit Pager
 
Von welchen brauchbaren Query-/Dataset-Komponenten sprechen wir hier?

Jasocul 12. Jan 2018 10:35

AW: Darstellung und Umsetzung DBGrid mit Pager
 
Kommt darauf an, auf welche DB du zugreifst.
Bei mir ist es MS-SQL mit SDAC-Komponenten.

ernschd 12. Jan 2018 10:46

AW: Darstellung und Umsetzung DBGrid mit Pager
 
Ich greife auf MySQL mit UniDAC zu. FireDAC wäre auch verfügbar.

Jasocul 12. Jan 2018 10:50

AW: Darstellung und Umsetzung DBGrid mit Pager
 
UniDAC sollten auch eine FetchRows-Property haben. Bei FireDAC weiß ich es nicht.

DeddyH 12. Jan 2018 10:54

AW: Darstellung und Umsetzung DBGrid mit Pager
 
Rows Paging: http://docwiki.embarcadero.com/RADSt...Rows_(FireDAC)

hhcm 12. Jan 2018 11:05

AW: Darstellung und Umsetzung DBGrid mit Pager
 
Zitat:

Zitat von Jasocul (Beitrag 1390874)
UniDAC sollten auch eine FetchRows-Property haben. Bei FireDAC weiß ich es nicht.

FetchRows ist bei Unidac nicht das richtige. Siehe Doku.
Unidac selbst kennt sowas wie Limit & Offset nicht. Da müsste man was eigenes (z.B über Makros) basteln.

ernschd 12. Jan 2018 13:05

AW: Darstellung und Umsetzung DBGrid mit Pager
 
Dann schaue ich mir das mal an.

Vielen Dank für die Hinweise :)


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:33 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz