Naomi
How about one "meta" xaction (of course, you CAN nest some in between):
begin transaction
...
llUpdate = tableupdate(.t.,.t.,"First Table")
if not llUpdate
rollback
Else
tablerevert all the changes done previously
end transaction
close the process
endif
HTH
Terry
>Hi everybody,
>
>I'd like to understand if the behavior we're getting with transactions is what we should expect or there is some anomality here.
>
>Here is the scenario:
>
>When doing imports we put table buffering on bunch of our tables: Trans, Patients, Names, Address, Phones, etc. We then do various processes with the tables (inserting data or modifying data). Finally when it's time to commit the changes we do
>
>begin transaction
> llUpdate = tableupdate(.t.,.t.,"First Table")
> if not llUpdate
> rollback
> tablerevert all the changes done previously
> close the process
> endif
> ...
>end transaction
>
>Now in the separate VFP session we try to open tables used in the process. Prior to executing tableupdate we can open and close the table. But once the tableupdate is issued, we're getting "File is in use" error.
>
>So, is it the right behavior? The changes for that table are already happened through tableupdate, though the transaction is not yet closed.
>
>Thanks a lot in advance and suggestions.
- Whoever said that women are the weaker sex never tried to wrest the bedclothes off one in the middle of the night
- Worry is the interest you pay, in advance, for a loan that you may never need to take out.