When you are working with the data programmatically, you can commit or
rollback an entire transaction. See help on BeginTrans.
Bound forms use their own transactions (e.g. for rolling back a deletion),
but these are not exposed.
In Access 2000 and later, it is actually possible to open a transaction, and
then open a recordset inside that transaction, and then assign it to the
Recordset of the form so that the bound form's records are operating inside
your transaction. Then you can commit or rollback before closing the form.
In practice, however there are some problems and limitations with that
approach. It becomes very clumsy in a multi-user environment when multiple
users are holding transactions open for extended periods of time and can
rollback over the top of each other. Additionally, it is not possible to do
this with subforms that have a LinkMasterFields/LinkChildFields since Access
reloads the subform whenever the main form changes record, and so the
assignment of the recordset does not survive. On top of that, my experiments
suggested that this was not as stable as Access normally is.
So, in practice, my answer would be, No. You cannot do that short of copying
the records into a temp table, editing them there, and then sorting out any
multi-user conflicts yourself.
--
Allen Browne - Microsoft MVP. Perth, Western Australia.
Tips for Access users -
http://allenbrowne.com/tips.html
Reply to group, rather than allenbrowne at mvps dot org.
"hstijnen" <(E-Mail Removed)> wrote in message
news:C8BF2268-F4D6-4FA6-B0C4-(E-Mail Removed)...
> Hi,
> Does MS-Access 2000 has any commit and especially Rollback facilities?
> E.g.
> I have a form, apply some updates, and then when closing the form, I want
> to
> commit or Undo/Rollback the changes. Is that possible?
>
> Thanks for help
>
> Henk