Disappearing DataPipeline Field
I'm using Delphi XE and RB 14.08b48.
I have a TObject which contains a TppDesigner, TppReport, and a custom
descendent of TppJITPipeline. I have a form which creates the TObject, and
its constructor passes the form as a TComponent to be used in the creation
of its internal TppDesigner and TppReport. In the designer, I can see my
data pipeline. I can put a DBText on the form, and select a particular
field from the available fields in my pipeline. I can run the preview, and
see that it's properly displaying and traversing the data in my pipeline.
However, when I switch back from my preview to the designer, the DBText has
lost its association with my datapipeline. I have to reselect it and the
field from the dropdowns.
The same situation happens when saving the template. I'll select the
DBText, choose my datapipeline and desired field, and save the template.
When reloading the template, the DBText does not have its association with
my datapipeline.
Now, I am overriding some functions in the JITPipeline, but I'm wondering if
it's not enough. I have function overrides for
OnGetDataSetName
OnOpenDataSet
OnGetFieldValue
OnNext
OnFirst
EOF
All that said, I would have assumed the connection to the datapipeline by a
DBText would be a bit higher level than whether or not a function in a
datapipeline is overridden, given that it's mostly working.
Thank you.
I have a TObject which contains a TppDesigner, TppReport, and a custom
descendent of TppJITPipeline. I have a form which creates the TObject, and
its constructor passes the form as a TComponent to be used in the creation
of its internal TppDesigner and TppReport. In the designer, I can see my
data pipeline. I can put a DBText on the form, and select a particular
field from the available fields in my pipeline. I can run the preview, and
see that it's properly displaying and traversing the data in my pipeline.
However, when I switch back from my preview to the designer, the DBText has
lost its association with my datapipeline. I have to reselect it and the
field from the dropdowns.
The same situation happens when saving the template. I'll select the
DBText, choose my datapipeline and desired field, and save the template.
When reloading the template, the DBText does not have its association with
my datapipeline.
Now, I am overriding some functions in the JITPipeline, but I'm wondering if
it's not enough. I have function overrides for
OnGetDataSetName
OnOpenDataSet
OnGetFieldValue
OnNext
OnFirst
EOF
All that said, I would have assumed the connection to the datapipeline by a
DBText would be a bit higher level than whether or not a function in a
datapipeline is overridden, given that it's mostly working.
Thank you.
This discussion has been closed.
Comments
I created a simple example mimicking your description using only native
RB components and everything functioned as expected. My guess is that
there is an issue with your custom pipeline. Try running your
application with the standard JITPipeline and see if that gives the same
behavior.
If you would like, send a short email to support@digital-metaphors.com
and I'll send you my example to test with.
Nico Cizik
Digital Metaphors
http://www.digital-metaphors.com