The Data Access Development Environment (DADE) in ReportBuilder is built upon the concept of DataView classes. A DataView class is responsible for creating the data access objects required to connect a report to data. At a minimum a DataView will contain at least one DataPipeline. A typical DataView will contain one or more DataPipelines, DataSources, and DataSets.
In addition to creating the data access objects required to connect a report to data, a DataView can also provide functionality to enable the end-user to “design” the data view. One method of delivering this functionality is a data wizard.
TdaQueryDataView is an abstract ancestor for query based DataViews that use the ReportBuilder Query Wizard. An example of a descendant is TdaBDEQueryDataView which contains a BDE based TQuery component. The job of the Query Wizard is to interact with the end-user and build an SQL statement. The DataView communicates with the Query Wizard to provide information such as lists of available table names, field names, etc. Thus the Query Wizard never references any database objects, but instead relies on functionality provided by the query data view.
End-User <--> Query Wizard <--> Query DataView
This architecture enables the Query Wizard to be used with SQL based TdataSet descendants.