Hallo zusammen,
danke für die Inputs. Bei den Daten handelt es sich um ca 1.2 Mio Datensätze. Das
SQL sieht so aus:
SELECT ID, SerNr, Typ, Dat
FROM Ser_Nr
WHERE &ServOrt
ORDER BY SerNr, Dat
und stellt Daten für eine LookUp bereit. Das funktioniert auch, nur dass der Anwender je nach Arbeitsplatz 20-30s warten muss bis die Anwendung gestartet ist (Bei mir lokal dauert es ca. 3s). Und wenn das Laden der Daten in den Hintergrund verlegt werden kann, wäre das super. Ich habe auch schon mit dem Parameter Fetchall rum probiert. Dann wird das Starten zwar schneller, dafür wartet der Anwender aber beim Eingeben, da die Restdaten dann dort geladen werden.
Mit Virtualtable hatte ich bisher nicht gearbeitet, aber die Idee ist gut. Dann könnte ich auch hin und wieder im Hintergrund nachfragen ob auf dem Server neue Daten dazu gekommen sind und diese anfügen. Denn bei einem Refresh wartet der Anwender im Moment halt wieder.
Etwas erstaunt war ich als ich bei mir die Daten zuerst per
- UniQuery geöffnet habe (ca. 3s)
- und dann an über VirtualTable1.Assign(UniQuery) zugeordnet habe, was 18s dauerte
Ich habe leider keinen direkten Zugriff auf die langsamen Arbeitsplätze bei meinem Kunden, werde aber bei Gelegenheit schauen wie sich die Zeiten dort verhalten.
Gibt es einen schnelleren Weg von der
DB in die VirtualTable?
Grüße
Gerd
: