How to access Report Parameters from TdaDataSet descendant
Hi
I would like to access the report parameters or the values of the report
autosearch fields from a TdaDataSet descendant class.
I use TdaClientDataSet = class(TdaDataSet) and then in procedure
TdaClientDataSet.GetFieldsForSQL(aList: TList; aSQL: TStrings) i would like
to change the SQL using the values of the autosearch field(s). I am using
version 7.04
Any help?
Thanks in advance
Regards
Robert Merle
I would like to access the report parameters or the values of the report
autosearch fields from a TdaDataSet descendant class.
I use TdaClientDataSet = class(TdaDataSet) and then in procedure
TdaClientDataSet.GetFieldsForSQL(aList: TList; aSQL: TStrings) i would like
to change the SQL using the values of the autosearch field(s). I am using
version 7.04
Any help?
Thanks in advance
Regards
Robert Merle
This discussion has been closed.
Comments
What are you trying to accomplish? Please provide more details.
- Here is an example of using ReportBuilder's DADE with Delphi's
DataSnap/Midas architecture...
www.digital-metaphors.com/tips/RBEndUserWithDataSnap.zip
- Typically TdaDataSet would be used to get meta data about the Fields of a
DataSet. This could occur prior to and independent of any report autosearch
dialog being displayed. For example when you use the Query tools, the ask
the DADE plug-in to provide a list of available tables. The user picks a
table and then the Query tools as the DADE plug-in to provide a list of
fields. To get the list of fields, the plug-in creates a TdaDataSet.
--
Nard Moseley
Digital Metaphors
www.digital-metaphors.com
Best regards,
Nard Moseley
Digital Metaphors
www.digital-metaphors.com
I design reports by using the Query Designer. I can link togeter the tables
and fields and use autosearch fields to ask the user for parameter values.
For example I often want to retrieve some data that is in a certain period
of time. I then use a startdate autosearch field and an enddate autosearch
field to ask the user for a startdate and an endate. Then the report will
retrieve the data for the given period of time. This works fine to me.
Sometimes however the data to retrieve is to complicated (when I want to use
unions or specific ORacle functions) and the I chose "Edit SQL" on the SQL
tab. Now I miss the possibility to use autosearch fields to ask the user for
parameter values. To solve this problem I have the idea of using a certain
tagvalue in the hardcoded query (e.g. "select orderdate from orders where
orderdate <= #TAGVALUE_ORDERDATE#"). This tagvalue should ask the user for a
parameter value and retrieve the data filtering on that parameter value.
However when I want to save the query with the tagvalue I get an error in
TdaDataset, because the query cannot be opened. So I need a way to replace
the tagvalue with a parameter value (in the example the query could then be
"select orderdate from orders where orderdate <
TO_DATE('03-12-2007','DD-MM-YYYY')). I cannot find a way to replace the
tagvalue with a value of my own before saving the query in the designer (I
cannot find a way at all to comminucate between the report and dataset).
Running reports
Later on when running the report the user should be asked for a parameter
value for every tagvalue defined and the data should be retrieve filtering
on the parameter value(s)
I hope this makes things clear
Regards
Robert