Zitat von
HendrikSturm:
Diese Routine lief immer sauber ohne Probleme. Als ich die Anwendung nun auf Netzwerkbetrieb umstellte passierte es, dass die Suchfunktion nach Eingabe der Werte zwar immer noch einwandfrei und schnell läuft, allerdings nach Präsentation dere Suchergebnisse in der DBGrid, kann man erneute Eingaben in den Editfeldern nur noch extrem stark verzögert eingeben.
Das ist leicht zu erklären:
Ist die
Paradox-Tabelle lokal auf deinem Rechner ist die
Zugriffsgeschwindigkeit
um Faktor 10 bis 100 höher, als wenn die Datei auf einem Netzlaufwerk liegt.
Bei einer lokalen Datei kann Windows seinen
Datei-Cache ausspielen; im Netzwerk geht das nicht oder nur sehr begrenzt.
Wenn die (sehr langsame, da Wildcards enthaltende) Where-Bedingung zum Zuge kommt, muss die
BDE ständig ALLE Daten auf den Client ziehen und zwar bei jedem Tastendruck.
Die Idee, bei jedem Tastendruck sofort einen neuen Filter zu setzen ist so einfach nicht mehr machbar!!
Der Benutzer soll halt alle Filterkriterien eingeben und muss dann auf einen Knopf drücken.
Du könntest auch bei jeden Tastendruck einen Timer mit 0,8 Sekunden starten;
falls der Timer abläuft, wird der neue Filter gesetzt
falls der Benutzer vor 0,8 Sekunden eine neue Taste drückt, wird der Timer gestoppt und neu gestartet.