Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Große Datenmenge in LookupCombo zur Verfügung stellen (https://www.delphipraxis.net/192491-grosse-datenmenge-lookupcombo-zur-verfuegung-stellen.html)

Olli73 29. Apr 2017 13:17

AW: Große Datenmenge in LookupCombo zur Verfügung stellen
 
Zitat:

Zitat von norwegen60 (Beitrag 1369417)
Ein Beispiel ist in dem angehängten Bild zu sehen, wo das SQL nicht ganz einfach wäre um auch die Nummern anzuzeigen die vor dem ersten eingetippten Buchstaben H stehen. Und da die Serien-Nr. vielen unterschiedlichen Systematiken unterliegen, weiß ich nicht was direkt vor H kommt. Ausser ich ladem mal sehr großzügig um H herum.

Code:
select "die ersten X Datensätze, die kleiner sind als H"
UNION
select "die ersten X Datensätze, die größer sind als H"
Im Thread könntest du ein ClientDataSet verwenden und entweder das komplett übergeben oder über Save/LoadFromStream. Vielleicht ist das ja schneller als einzelne Datensätze zu übergeben.

Hobbycoder 29. Apr 2017 21:32

AW: Große Datenmenge in LookupCombo zur Verfügung stellen
 
Zitat:

Zitat von norwegen60 (Beitrag 1369417)
Ich verstehe nicht warum die Diskussion immer wieder dahin abgleitet ob es sinnvoll ist so viele Daten zu laden. Ich habe nie gesagt, dass irgendjemand durch 100000 oder gar 1.4 Mio Datensätze blättern will.

Weil das ja nun mal dein größtes Problem darstellt. Und logischerweise halten alle das für nicht zweckmäßig.

Zitat:

Zitat von norwegen60 (Beitrag 1369417)
Als ich das Pulldown vor 30 Jahren eingeführt habe, hat man in SAP noch mühsam über Filter gesucht. Vor ca. 10 Jahren hat Google angefangen nicht nur das anzuzeigen was genau dem Suchbegriff entspricht sondern eine "unscharfe" Suche.

Als du das Pulldown vor 30 Jahren eingeführt hat, dass das ggf. einmal aufgrund der Datenmenge zu einem Problem führen könnte. Den von SAP schon, deswegen haben die einen Filter genommen.
Für eine "unscharfe" Suche benötigt aber auch Google erst einmal irgendwelche Suchparameter, ansonsten wäre das ein Schuss ins Blaue.
Ich habe dir ja oben eine Thread gezeigt, mit dem du sofort nach Programmstart die Daten laden kannst. Da Thread, dürften da schon mal keine unschönen Zwangspausen im Hauptprogramm auftretet. An der Übertragungsdauer der Daten ändert das jedoch nichts. Und da du eben 1,4 MIo Information übertragen willst, die mal grob geschätzt je Datensatz 15-x Zeichen enthalten, sind das schon mal 20MB, und das kann je nach Übertragungsweg eben eine gewisse Zeit dauern.
Da dein Programm am Übertragungsweg nichts ändern kann, dir die Zeit aber nicht gefällt, muss an den Parametern schrauben, die du beeinflussen kannst. Und das wäre ja in erster Linie die Datenmenge.


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:58 Uhr.
Seite 2 von 2     12   

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-2025 by Thomas Breitkreuz