Hi all -

I am new to DOA and need some advice on posting updates via tdatasetprovider..

I have a nested structure (TDatasetFields) wired up on the server side using a single TDatasetProvider and several M/D TOracleDatasets. Some of the datasets read tables, and some read non-updateable views.

When I post the single structure from the Client, I get a datset not open error when trying to resolve the first child dataset on the server. I am using ResolveToDataset=True.

Question - is this the wrong strategy to be using? Should I turn off ResolveToDataset and process each delta in the TDatasetProvider.BeforeUpdateRecord event?

here is how I was doing this prior to DOA:

procedure TlwdmIVE.dspIVE_HDRBeforeUpdateRecord(Sender: TObject;
SourceDS: TDataSet; DeltaDS: TCustomClientDataSet;
UpdateKind: TUpdateKind; var Applied: Boolean);

if DeltaDS.datasetfield = nil then begin
// process the master dataset
end

else if DeltaDS.datasetfield.fieldname = (ChildDSName here) then begin
// process the named child dataset
end

etc.


I was hoping to allow DOA to process all the tables, then intercept control (via ApplyRecord event) to handle the views, but perhaps this won't work with a nested structure?

thanks for any advice -

david buitenveld