Mal eine einfache Frage:
Woher soll dein im Arbeitsspeicher, aber noch nicht in der Datenbank bestehende Datensatz wissen, welche ID von der DATENBANK beim speichern (post) vergeben wird?
Denn zwischen deinem begin Edit des Masterdatensatzes und deinem POST kann von einem anderen Client bereits ein Post ausgeführt werden, dann währe deine ID gleich um 2 höher wie bei beginn des Edits..
Erst mit Post wird der Datensatz an die
DB geschickt, erst dann wird die nächste ID per AutoInc vergeben.
Dies war auch schon bei
Access so, außer das die dort verwendeten Datenbank-Komponenten automatisch ein (internen) Post ausgeführt haben, wenn der Detailsatz erstellt wird.
Oder es wurde eine PseudoID im Speicher verwendet, welches durch die
DB-Komponente beim Post korrigiert wurde...
Ich kenne keine Komponenten, die eine von der
DB vergebenen ID schon im voraus 'reservieren' kann..