MIDAS Support and D4

mwlang

Member²
All the documentation I've encountered about Midas support and the Provider info says that DOA supports the TDatasetProvider in Delphi 5. Although I can't exactly tell, it also appears to state that TOracleProvider should be used in D4, but not for D5.

We use D4 and I am trying to see what's involved in migrating from TQuery to TOracleDataSets in our MIDAS application...we store field definitions on the AppServer in the TQuery components and use the TProvider Options property to set poIncFieldProps to transfer those props over to the client dataset.

If I don't care about field props, then the TOracleProvider works fine throughout the app, but there's no equivalent option to the poIncFieldProps in this component.

When I try a TDatasetProvider (which has the poIncFieldProps), then I can no longer use aDataSet.Provider.DataRequest on the client to get data packets...this method of retrieving data is important for good WAN performance as we limit the RecordPackets to 5 at a time as well as providing some WHERE clause modifiers in the DataRequest's Input parameter that's tacked on to the end of the SQL of the TQuery before it's opened on the server.

So this leads me to two questions:

Is the TDatasetProvider fully supported in D4? If so, what's the equivalent code workaround to the above scenario?

If the TDatasetProvider *not* supported in D4, what is different between D4 and D5 that it then becomes supported?
 
The difference between Delphi 4 and 5 is that in Delphi 5 the abstract TDataSet included the ProviderSupport interface. This made it possible for 3rd party TDataSet descendants to be used with the TDataSetProvider component. If you want to create a MIDAS application with Direct Oracle Access and compatibility is important (like for your migration), it is recommended to use Delphi 5 if possible.

------------------
Marco Kalter
Allround Automations
 
That makes perfect sense, now. Unfortunately our budget limits us to Delphi 4 for the time being. If you have any suggestion for how to implement the following with D4 and DOA, your suggestions would be much appreciated:

How to store additional Field Properties on the App Server (such as DisplayLabel, DisplayFormat, etc.) and load them into the Client Dataset prior to opening the dataset.

How to implement a mechanism of modifying the server side SQL from the client side (which we're now doing with a call to the ClientDataSet's Provider.DataRequest method prior to opening the dataset.

These are the only two sticking points I see and so far the ideas I've had for implementation all require a lot of coding to implement.

Thanks

[This message has been edited by mwlang (edited 22 February 2001).]
 
I don't have any clean solutions for this. Perhaps other users do?

------------------
Marco Kalter
Allround Automations
 
Back
Top