Guten Morgen zusammen,
ich nochmals zum Thema
Query:
Folgendes, ich habe eine Eingabemaske in der cxdbEdit - und cxdbextlookupComboboxen zum einsatz kommen. Die Eingabedaten aus den cxdbEdit - Feldern sowie die Daten aus den cxdbextlookupComboboxen Schreibe ich in die im hintergrund angebundene TTable (z.B. ibtableZeiterfassung).
Das cxdbGrid erzeugt die dort dargestellten Datensätze mithilfe einer im hintergrund angebundenen IBQuery, die ich mit den passenden
SQL-Befehlen gefüttert habe damit die Ansicht im Grid meinen Vorstellungen entspricht.
So, wenn ich jetzt einen neuen Datensatz eingebe und diesen Speichere wird er in die TTable geschrieben, aber ich sehe in dann immer noch nicht im Grid, erst wenn ich die Anwendung komplett schliesse und dann wieder öffne wird dieser dargestellt. Möchte aber das er direkt nach der Speicherung angezeigt wird (ist ja schon mist wenn ich nach jedem Datensatz die Anwendung schliessen und öffnen muss nur damit ich den Datensatz zu Gesicht bekomme).
Jetzt habe ich Gestern rausbekommen das ich die
Query natürlich aktuallisieren muss (soweit alles klar bei mir) habe mir dann einen passenden Event ausgesucht auf den ich REagiere und folgende Zeilen in Code Geschrieben:
Delphi-Quellcode:
cxdbGrid.BeginUpdate;
DataModuleMain.ibqueryzeiterfassung.updateRecord;
cxdbGrid.EndUpdate;
Habe gedacht das sollte klappen, tut es aber natürlich nicht, es wird mir dann die Meldung rausgegeben "Datenmenge die nur zum Lesen geöffnet werden kann, kann mit diesem Paramter nicht Aktuallisiert werden".
Meine Frage jetzt :
Was muss ich denn zwischen BeginUpdate und EndUpdate Schreiben damit er mir die Ansicht meines Grids über die
Query nach eingabe eines neuen Datensatzes sofort Aktuallisiert ?
Habe auch schon andere Befehle ausprobiert, wie das schliessen und öffnen der Tabellen, klappt aber auch nicht und ist auch nicht gerade elegant, geschweige denn Effektiv.
Hat da jemand vieleicht einen Hinweis oder Tip oder Quellcode-Beispiel für mich, damit ich an dieser Stelle endlich weiter komme ?
Für hilfe wäre ich sehr Dankbar.
Gruss
Darkchild