Elite Veteran
Beiträge: 866
Ort: Wien | eric - 06.01.12
...2007, *.accdb
Ich habe ein Endlosformular mit knapp 20 Spalten, etwa 8 davon haben eine bedingte Formatierung (Feld wird rot eingefärbt wenn leer), und zwei CommandButtons in jeder Zeile. Es werden etwa 30 Datenzeilen simultan angezeigt.
Klappt auch alles gut und beim scrollen durch die Tabelle (20.000 Datensätze) geht das alles erstaunlich flüssig, die bedingte Formatierung erscheint augenblicklich.
Jetzt wollte ich vom Endlosformular auf Datenblattansicht umstellen, ... erhebliche Verzögerungen bis alle Felder eingefärbt sind, ca. 1 Sekunde...
Ich habe auch manchmal den Eindruck, dass die Datenblattansicht diesbez. langsam(er) ist. Kann allerdings auch daran liegen, dass dort meistens mehr Zeilen pro Seite angezeigt werden.
Spezifischen Trick kenne ich keinen. Bei Performanceproblemen mit der BF hilft es oft, die Bedingungsausdrücke im BF-Dialog so primitiv wie möglich zu halten und so viel wie möglich in einer zugrundeliegenden Abfrage vorzubereiten.
Bestehen deine Leer-Prüfungen nur aus IsNull()-Ausdrücken auf die Felder? Dann wird es wahrscheinlich nicht viel bringen, aber testen könntest du trotzdem mal, was passiert, wenn du den Ausdruck schon in der Abfrage mit berechneten Feldern machst und im BF-Dialog die Bedingung auf "Ausdruck ist... [BerechnetesFeld] = True" änderst.
Bei 20000 DS ist natürlich fraglich, ob dieser Ansatz etwas verbessert oder verschlechtert, denn dann dauert evtl. die Abfrage länger.
----- Servus
Karl
*********
Access-Entwickler-Konferenz: https://www.donkarl.com/?aek - Jetzt anmelden für 19./20.10. in Nürnberg
Access DevCon Vienna: https://www.donkarl.com/devcon
Access Forever: https://www.accessforever.org
Access News: https://www.youtube.com/playlist?list=PLVCeBbJIMDvdJ8ghMbEakJ6_EQyvy... |