Subject Re: [IBO] Controlling IB_Transaction
Author Geoff Worboys
> First I connected all of my queries with mastersource
> properties but I noticed that posting a detail row will
> post master row implicitly. So I chained queries by myself
> now to avoid that.

Just curious, why did you decide to do this? I thought the implicit
posting of the master dataset was one of our greatest achievements :-)
It allows a complex structure to be presented to the user as a single
object, with the automation taking care of the interdependancies
automatically.


> Anyway, after finishing procedure I would like to ask user
> if transaction should be saved and call CommitRetaining/
> RollbackRetaining depending on users choice.

My preference is to use Transaction.Refresh(true) for commit and
Transaction.Refresh(false) for rollback. This way the transaction is
fully reset. CommitRetaining will retain the existing transaction
context and so continue to hold up any processing that may be waiting
on the transaction to end. (RollbackRetaining is an IBO simulation
and will result is a full transaction reset anyway.)


> But transaction is always committed. Do I have to assign a
> TIB_transaction comp to everey TIB_Dataset to achieve my needs?

I dont quite understand what you are getting at with "transaction is
always committed". It depends on exactly what you are doing, but I
imagine you would want all the master/detail operations to occur
within the same transaction - so that they will be committed or rolled
back together.


Geoff Worboys
Telesis Computing