sorry das ich hier erst so spät noch mal rein schaue.
besten dank für eure Lösungsvorschläge.
@ Furtbichler:
Zitat:
1. Öffne einen modalen Dialog, um die Änderungen am Record vorzunehmen. Gleichzeitig ist dein Grid eh gesperrt, eben weil der separate Dialog modal ist.
2. Du kannst du Daten auch direkt im Grid ändern.
3. Du musst das Grid nicht sperren, wenn ein Datensatz verändert wird. Du solltest aber geeignet reagieren, wenn der Fokus auf einen anderen Datensatz gesetzt wird. Du könntest z.B. prüfen, ob der Datensatz verändert wurde und per Messagebox fragen, ob die Daten gespeichert, verworfen, oder der Fokuswechsel verworfen werden soll.
klasse ideen, nr 3 schwebte mir auch schon als lösungsansatz vor. Da ich die Daten nicht im Grid sondern in den dazugehörigen DBEdits ändere, konnte man eben auch im Grid hin und her wechseln und und es haben sich die dazu gehörigen Felder aktualisiert.
Mein problem war, das ich dachte das sich die ID des zu bearbeitenden Datensatzes ändert, sobald man zwischen mehreren Zeilen wechselt. Allerdings werden die Daten ja direkt in die "
DB" geschrieben, sobald man etwas in den dazu gehörigen DBEdits geändert hat. Durch ein Commit der Transaktionskomponente wurde das dann endgültig gespeichert.
und da hatte ich einen fehler eingebaut.
Im grunde war es die korrekte konfiguration des grids und der dazu gehörigen komponenten. Ich muss dazu sagen, das ich im thema datasets etc. noch relativer neuling bin, und eher via trial and error die neuen dinge mir erschließe. In dem fall wurde mir von nem kollegen geholfen, der da mal drüber geschaut hat.
in diesem sinne, noch mal vielen dank an alle