Expansion of Fields
Good Morning:
It has been quite some time since I last wrote pipelines for RB. Recently,
have a project planning on using RB again 9.02.
The report system is end user, so all fields need to be exposed.
However, one SQL field is stored as a binary BLOB, and is in fact some
proprietary DETAIL records packed by a Delphi program, prior to storage as a
BLOB.
So, on retreival of the RECORD, the designer sees one of the fields as
single FIELD of type BLOB, which is actually a MASTER->DETAIL relationship.
Now, we wish to expose the internal records and FIELDS in the BLOB to the
End User Report Design.
Can someone point me in a direction on pipeline creation to expose these
hidden fields to the end user ?
If I recall one would create pseudo fields in the Data designer and....
Phil.
It has been quite some time since I last wrote pipelines for RB. Recently,
have a project planning on using RB again 9.02.
The report system is end user, so all fields need to be exposed.
However, one SQL field is stored as a binary BLOB, and is in fact some
proprietary DETAIL records packed by a Delphi program, prior to storage as a
BLOB.
So, on retreival of the RECORD, the designer sees one of the fields as
single FIELD of type BLOB, which is actually a MASTER->DETAIL relationship.
Now, we wish to expose the internal records and FIELDS in the BLOB to the
End User Report Design.
Can someone point me in a direction on pipeline creation to expose these
hidden fields to the end user ?
If I recall one would create pseudo fields in the Data designer and....
Phil.
This discussion has been closed.
Comments
For each dataset you need a separate DataPipeline. If the detail data is
embeddd in a blob field of the master, then you still need two
DataPipelines.
A DataPipeline can have any number of fields defined for it
(DataPipeline.Fields[]). So your detail datapipeilne needs to define
TppField objects for each relevant detail field. There is a
DataPipeline.DefineFields method that can make this easier.
I think you are going to need to use the master datapipeline
OnRecordPositionChange event to initialize the detail datapipeline.
--
Nard Moseley
Digital Metaphors Corporation
http://www.digital-metaphors.com
Best regards,
Nard Moseley
Digital Metaphors
www.digital-metaphors.com
Made some progress here.
Question:
1. So, I have a JITPipeline that has defined fields, and appears to be
correctly decoding the BLOB.
How do I now SURFACE this pipeline such that it will showup in the DADE as a
pretty picture of fields and so forth.
Phil
You need to create a custom dataview class. For examples, see
RBuilder\Demos\EndUser\Custom DataViews. Also check out the DADE thread of
the Tech Tips newsgroups for an overview of the architecture.
You will want your custom DataView class to act as a container for the
master and detail datapipelines.
--
Nard Moseley
Digital Metaphors Corporation
http://www.digital-metaphors.com
Best regards,
Nard Moseley
Digital Metaphors
www.digital-metaphors.com