Watch, Follow, &
Connect with Us

For forums, blogs and more please visit our
Developer Tools Community.


ID: 24031, TDataSetProvider Replacement

by Clint Good Email: Anonymous


TDataSetProvider replacement provides much improved performance when used in conjunction with poFetchDetailsOnDemand by not relying on standard dataset master/detail linking.
Download Details
FTP  download also available
CDN Login Required to Download. (You will be redirected to the login page if you click on the Download Link)
To download this, you must have registered:
A free membership

For Delphi, Version 10.0  to 10.0 262 downloads
Copyright: No significant restrictions


Size: 44,503 bytes
Updated on Sun, 02 Jul 2006 21:42:04 GMT
Originally uploaded on Sun, 02 Jul 2006 21:41:53 GMT
SHA1 Hash: C2AC06D2ADA3D3A4630D883EF2C9D97CED8ABEF2
MD5 Hash: 66D615F76272F0A65D0649EF1AB258D2

    Explore the files in this upload

Description
TDataSetProvider Replacement
---------------- -----------

Modified and extended version of Provider.pas
Modified by Clint Good
ComputerFleet Australia 2006

This Software is provided as is and without a warranty of any kind.
Your use of this Software is entirely at your own risk.

This dataset provider replacement improves performance because it does not rely on standard dataset master/detail linking which performs more work than necessary to 'provide' the data, especially when working with poFetchDetailsOnDemand. The modified dataset provider (TcfDataSetProvider) contains the master detail definition and linking information itself.

The demo supplied is tested with SQL Server 2000 and uses the Northwind database. It assumes that the database name '.' (i.e. Local SQL Server installation) is valid. Change the ConnectionString property before compiling if this is not appropriate.

The cfProvider.pas file is a modified copy of Provider.pas so it's
operation should be the same as Provider.pas except for it's handling
of master detail relationships.

The key differences are as follows :-

TcfDataSetProvider
------------------

Property:-

DetailDataSetItems - Collection of linking information (TcfDataSetItem) for detail
datasets to the DataSetProvider's DataSet property.
(ie. Links to detail of the master dataset).

TcfDataSetItem
--------------
Property:-

DataSet - Specifies the child dataset

MasterFields - Ordered list of field names in the master dataset
that determine the parameters set in the detail dataset.
Multiple field names are separated by semi colons (;)

DetailParameters - Ordered list of parameter names in the detail dataset
that are set to the value of the corresponding master
dataset field values as specified by the MasterFields property
Multiple parameter names are separated by semi colons (;)

DataSetItems - Collection of linking information (TcfDataSetItem) for detail
dataset of the TcfDataSetItem's DataSet property
(ie. Links to detail of the detail dataset).

AfterUpdateRecord - Analogous event to TDataSetProvider.AfterUpdateRecord but
specific to this particular detail dataset.

BeforeUpdateRecord - Analogous event to TDataSetProvider.BeforeUpdateRecord but
specific to this particular detail dataset.


These changes work well for our specific purpose, but there are many
different configurations which are untested. If you have any problems
or suggested improvements, please mail me at the email contained in the readme file.

Keywords:- midas datasnap datasetprovider TDataSetProvider slow poFetchDetailsOnDemand FetchDetails speed performance

   Latest Comments  View All Add New

Move mouse over comment to see the full text

Could not retrieve comments. Please try again later.

Server Response from: ETNACDC03