Hallo alle...
ich bin mal wieder in einer Glaubenskrise...
im Prinzip hätte ich gern eine Meinung wie Ihr das lösen würdet. Wenn jemand eine direkte Lösung hätte wäre ich überglücklich.
Vorgaben:
- Form mit Eingaben / Änderungen aus 3 Tabellen.
- 1 Tabelle EditFelder
- 2 Tabellen werden in DbGrid´s visualisiert
- alle Informationen werden mit Querys eingelesen.
- da alle Eingaben / Änderungen zusammenhängen sind alle in eine Transaktion verpackt.
( Transaktion Start beim OnShow... Commit oder Rollback beim Schließen.
das Problem:
- die ZQuerys sind nicht ReadOnly. d.h. wenn ich mit ZQuery.Append einen Datensatz anhänge setzt die
Query ein
SQL Statment ab, welches in der Transaktion aufläuft.
- gleiches bei Änderungen in den Feldern der
Query und Abschluß mit Post.
--> jetzt habe ich manchmal, daß die Informationen, welche in der
Query geändert wurden, trotz Post und Commit nicht in der Tabelle ankommen...aber manchmal doch.
z.B. Veränderung der RadioGroup schreibt den Index in Datenfeld STATUS der
Query --> Status wird im Grid richtig angezeigt --> in der Tabelle steht nach Commit immer noch der alte Wert.
--> Append und Delete funktionieren anstandslos.
- dieses Verhalten kann ich nicht reproduzieren, d.h. diese Kombination ist mir zu unsicher.
PS:
- DBRadioGroup in Verbindung mit
Query geht auch nicht
- auch mit ZUpdateSQL und definierten Statements für Insert / Update / Delete gleicher Effekt
- bei der anderen
Query funktioniert auch das Update...der Unterschied ist, daß bei dieser
Query die Anzahl der Datensätze vorgegeben ist und bei der anderen (wo es nicht funktioniert) Datensätze hinzugefügt / gelöscht werden können.
- die Anweisungen zum Ändern der Datensätze beider Querys sind identisch.
ich bräuchte eine
Query, welche kein
SQL Statement absetzt so daß ich die Änderungen zu Fuß eintragen könnte
- ich habe den Quelltext bis auf ein Minimum auskommentiert, weil ich dachte, irgend ein Ereignisaufruf (z.B AfterSroll)
was durcheinander bringt...Ohne Erfolg
bleibt nur noch...
für alle Hilfe bin ich dankbar...
Ich hoffe mich verständlich ausgedrückt zu haben.
Das ganze ist zu komplex für Quelltext posten.