Hallo Domosokrat,
Also ich kann mal einige Rahmenbedingungen nennen.
Das ganze Programm ist eine Kundenverwaltung. Dabei wird unterschieden zwischen
Haushalten tbl_haushalte
und Kunden tbl_personen
Jeder Haushalt hat eine gewisse Anzahl an Kunden die einem Haushalt zugeordnet werden.
also kann z.B. an einen 4 Personen Haushalt nur EIN Werbebrief verschickt werden, obwohl es in diesem Haushalt zwei unterschiedliche Kunden (Ehemann und Ehefrau) gibt.
Gut, soviel zum Hintergrund.
Jetzt habe ich ein Formular, aufgebaut aus DBEdits mit den jeweiligen Eingabefeldern für den Haushalt.
Alle Speicherfunktionen laufen über die TDatasource bzw. TZTable, TZConnection usw..
Also für einen einfachen Speichervorgang wird einfach das DBEdit geändert und
der DataSet.Post wird sowieso ausgelöst.
Nun ist mir aufgefallen, das ich während des Programmes beliebig viele Datensätze ändern kann. Aber erst beim schließen des Programmes wird offensichtlich der Transaktionsvorgang durchgeführt,so daß es da zu den Problemen kommt?
Habe auch schonmal hier irgendwo gelesen das Firebird embedded Probleme mit sog.
StoredProcs und dem schließen von Programmen hat, aber ausser einer AutoIncrement Funktion ist meine Firebird DB das einfachste vom einfachsten...
Noch eine Frage: wie kann man Zeos Exceptions direkt abfangen? über try except geht
das irgendwie nicht.
Vielen Dank schonmal. wenn Du noch mehr angaben brauchst, frag bitte.