TOracleSession and AutoCommit desupport

Why is the AutoCommit property of the TOracleSession being desupported in version 3.4? If you do this, you are going to have alot of angry customers on your hands.

We have a big pile of code (as I'm sure many of your other customers do) that does not use explicit transactions. All of this code will have to be changed and debugged if you make this change.

Why the change?
 
The AutoCommit property is obsolete because it is incompatible with other features (such as the TLOBLocator object). Besides that, it is good practice to explicitly manage your transactions, though this is just a matter of taste.

Anyway, we don't want to upset existing users and confront them with lots of changes as a result of an upgrade. Backward compatibility has always been important to us. So we will simply leave the AutoCommit property as it is, and just remove it from the documentation. This way new users will not be tempted to use it.

------------------
Marco Kalter
Allround Automations
 
So how do we commit our changes?

I am using the following with no success. When I quit the app and look at the same record, no changes were saved.

What Event should this belong to?
Why is it not committing/posting the changes?

procedure TfrmMain.wwDSMediaGroupBeforePost(DataSet: TDataSet);
begin
// Since we are using CachedUpdates := True
try
// ApplyUpdates triggers the OnBeforePost
// Event so do not use
// OraSession1.ApplyUpdates([DataSet],
// False);
OraSession1.CommitUpdates([DataSet]);
except
OraSession1.Rollback;
end;
end;

------------------
Brooks Vaughn
brooks@tidalwave.net
 
Back
Top