Hallo,
in meiner Datenmodul kleben viele Queries, die zur Laufzeit aktualisiert werden. In verschiedenen Forms sind
DB-Komponenten (DBEdit etc, aber auch z.B.
Jedi DBComboSearchBox).
"An sich" ist alles ok.
Nur bei einer
Query passiert folgendes: das Programm steht für ca. 20 Sekunden, die CPU-Last schnellt nach oben, nichts geht mehr. Nach den 20 Sek. ist die
Query durch, alles läuft normal weiter.
Jetzt bin ich auf der Suche nach der Ursache bzw. am Nachforschen, was da überhaupt passiert.
Ach so: die
Query selbst ist's nicht, die braucht 0,... Sekunden wenn ich sie direkt ausführe.
In allen anderen Queries machen ich "eigentlich" nichts anderes, da läuft alles fix.
Vermutungen:
1) am Dataset der
Query hängen irgendwelche Komponenten, die nach einem Update ständig neu über nachgeschaltete OnChange-Ereignisse oä andere Aktionen triggern; an der
Query hängt insbes. eine JvComboSearchBox mit einem onchange
-> das habe ich soweit möglich händisch kontrolliert und mal alles deaktiviert, kein Unterschied
2) anderer Versuch: mit SendMessage(f_main.Handle, WM_SETREDRAW, 0, 0) die Aktualsierung zu unterbinden
3) über den asmProfiler versucht, etwas mehr Info zu bekommen - leider sagen mir die Ergebnisse nichts, ich kann keinen Bezug zu evtl. aufgerufenen Prozeduren finden
Jetzt bin ich wohl ziemlich mit meinem Latein am Ende. "Irgendetwas" läuft da massiv an, wenn die
query neue Daten kriegt.
Wie komme ich der Ursache auf den Grund?
Vielen Dank für eure Tipps!
LG Heiko