Changing where a report gets its data from
Delphi7 and RB latest release (10.07)
Hello,
I use reports that I load at runtime. These have been designed using the
Database connection under the Data tab of the designer. These work fine
without any problem.
I have now been asked if I can modify the reports to take into account an
extra field in a table that may or may not exist (the user has the ability
to add extra fields). As this extra field isn't visible in the report I'm
assuming that I could apply a modified SQL statement to the report at
runtime. Would this be possible ?
The second problem is that in some instances I'll need to create a dataset
and then run the report against this dataset. Can I use my existing reports
that are configured to look directly at a table but tell them to use my
dataset instead. Could I do this by using a DBPipeline control and pass that
into the DataPipeline property of the TppReport control ?
Ian Munro
Hello,
I use reports that I load at runtime. These have been designed using the
Database connection under the Data tab of the designer. These work fine
without any problem.
I have now been asked if I can modify the reports to take into account an
extra field in a table that may or may not exist (the user has the ability
to add extra fields). As this extra field isn't visible in the report I'm
assuming that I could apply a modified SQL statement to the report at
runtime. Would this be possible ?
The second problem is that in some instances I'll need to create a dataset
and then run the report against this dataset. Can I use my existing reports
that are configured to look directly at a table but tell them to use my
dataset instead. Could I do this by using a DBPipeline control and pass that
into the DataPipeline property of the TppReport control ?
Ian Munro
This discussion has been closed.
Comments
If the extra field exists, you could possibly use the TdaSQLBuilder to add
the field to the dataview/datapipeline that is connected to that dataset.
I'm a bit unclear about the specifics of your application. Are giving your
users access to the end-user designer and they would like access to a new
field without using DADE? The SQLBuilder can also be used to create a new
dataset and you can connect your report to that dataset before it is loaded.
--
Regards,
Nico Cizik
Digital Metaphors
http://www.digital-metaphors.com
Nico Cizik
Digital Metaphors
http://www.digital-metaphors.com