hi,
was mir ganz spontan einfällt: Mach ein Stringlist in der Du KEy=Value die Änderungen protokollierst, d.h. im Setter des property musst Du die Property und den neuen Wert in die Stringlist speichern. Beim Save gehst Du dann die Stringlist durch und speicherst die entsprechende Werte in der
DB.
Wenn Du alle Änderungen in der SL speicherst könntest Du darüber auch eine Undo-Funktion bauen.
Füllen des Objekets: Klar über
RTTI. den Präfix würde ich persönlich weglassen (was soll das F?) oder die ungarische Notation verwenden.
Problem dabei ist aber, dass in Datenbanken die Länge der Feldnamen beschränkt sein könnte (z.B. in Firebird) - in diesem Fall also kurze Feldnamen verwenden oder über eine Zuordnungsliste gehen (FeldnameDB=PropertyName) oder über die Attribute (wenn die neue
RTTI verwendet wird).
Grüße