DataPipeLine Adding Fields
Hello All:
The primary support function our software does is to supply custom
ReportBuilder reports to our customers. So, report maintenance is important.
We use Delphi 5 and RB 6.02.
Our database is still evolving and we are adding fields ( especially
calculated fields ) on a regular basis.
Typically we have 2 or 3 DatapipeLines on each report. 2 of the
DataPipelines are experiencing field growth.
We will clone a new report off of an existing report. If new fields have
been added to the database, they do not show up in the cloned reports
datapipeline.
We use persistent fields in the datapipeline. We end up having to
manually add these fields into the dataPipeLine. This is very awkward and
takes time. Our people who build these reports are not always that
technical.
If we delete the pipeline and then replace it, the DBText components in the
report get their datapipeline properties cleared. Since an average report
has 90 DBText components, this becomes a major chore.
Any suggestions on how we can address this issue ???
Thank you.
Neil Huhta
Profit Monster Data Systems LLC
The primary support function our software does is to supply custom
ReportBuilder reports to our customers. So, report maintenance is important.
We use Delphi 5 and RB 6.02.
Our database is still evolving and we are adding fields ( especially
calculated fields ) on a regular basis.
Typically we have 2 or 3 DatapipeLines on each report. 2 of the
DataPipelines are experiencing field growth.
We will clone a new report off of an existing report. If new fields have
been added to the database, they do not show up in the cloned reports
datapipeline.
We use persistent fields in the datapipeline. We end up having to
manually add these fields into the dataPipeLine. This is very awkward and
takes time. Our people who build these reports are not always that
technical.
If we delete the pipeline and then replace it, the DBText components in the
report get their datapipeline properties cleared. Since an average report
has 90 DBText components, this becomes a major chore.
Any suggestions on how we can address this issue ???
Thank you.
Neil Huhta
Profit Monster Data Systems LLC
This discussion has been closed.
Comments
component, so we'll need to check into that.
In the interim, I would copy the CreateDefaultFields method in ppDBPipe.pas
and create a new function which automatically adds new fields to the pipe...
--
Cheers,
Tom Ollar
Digital Metaphors Corporation
http://www.digital-metaphors.com
info@digital-metaphors.com
Thank you for your quick reply. You guys are rock solid.
The Pipeline is a TBDEPipeline attached to a DBISAM table. Should we be
using a plain DBPipeline ??? The fields in question are calculated fields -
would that make a difference. Also, at design time we have a non-existent
path in our TDatabase component so DM doesnt leave tables open at design
time ( we use DBISAM ).
When you say create a new function which adds fields to the pipeline,
specifically how am I doing this ???
Am I creating some kind of design time add-on to the BDEPipeline ???
Am I subclassing the BDEPipeline ???
Am I modifying the source for the TBDEPipeline ???
I have written plenty of components including a subclass of the
TppDBText, but have no experience extending the Delphi IDE.
Any further guidance would be greatly appreciated. Thank you for your
help.
Neil Huhta
Profit Monster Data Systems
could call from the FormCreate for forms containing the data pipelines:
procedure TForm1.FormCreate(Sender: TObject);
begin
gAddNewFields(ppBDEPipeline1);
gAddNewFields(ppBDEPipeline2);
...
end;
gAddNewFields would be based on the CreateDefaultFields method in
ppDBPipe.pas and would compare the fields in:
aDataPipeline.DataSource.DataSet.Fields
with the fields in the data pipeline:
aDataPipeline.Fields
and would add any new fields, using the same field creation technique in
CreateDefaultFields...
Also, doesn't matter if you use TppDBPipeline or TppBDEPipeline - for Delphi
5 and later they are the same thing...
--
Cheers,
Tom Ollar
Digital Metaphors Corporation
http://www.digital-metaphors.com
info@digital-metaphors.com
I have failed to communicate in a major way. I'm talking about working
in the Delphi IDE. We create/modify the reports for our customers and then
send these reports out.
How can we address this within the IDE ???
Thank you.
Neil Huhta