Creating labels at run time stretching to next page
Hello, Nico,
I was asking previously on how to have slanted header columns for a crosstab
report
and you suggested creating ppLabels at run time.
My problem is that I could not determine the left property of each label to
align with its matching column. PLUS the labels will not stretch to the next
page with the crosstab when the crosstab overflow, even though I put them in
a stretcable region....
Is there a way to do this? I mean, determine the width of a column before it
is printed.
In the GetCaptionText event, which does come after the CrossTab.AfterCalc,
all the
crosstab.matrix.captionWidth[aColumn, ARow] are = 0.....
In which event can we see the final column width for a crosstab?
I also tried to create at run time a report equivalent to the crosstab. The
rows are definitively longer than a page width, even in landscape mode. But
once more I cannot create labels past the width of the band. I put them in
a region, set the region ReprintOnOverflow to true. Once a label left
position reaches the width of the band, all the next left positions stays
fixed (10.5). Same, I cannot expand the width of the region past the width
of the band, at run time ?????
How can I create this "matrix" kind of report that will span several pages
horizontally, with slanted labels as headers???? The columns and headers
must be created at run time since we do not know how many there are ahead of
time. This does not sound like an unusual kind of report....
Thank you for your help.
Danielle
I was asking previously on how to have slanted header columns for a crosstab
report
and you suggested creating ppLabels at run time.
My problem is that I could not determine the left property of each label to
align with its matching column. PLUS the labels will not stretch to the next
page with the crosstab when the crosstab overflow, even though I put them in
a stretcable region....
Is there a way to do this? I mean, determine the width of a column before it
is printed.
In the GetCaptionText event, which does come after the CrossTab.AfterCalc,
all the
crosstab.matrix.captionWidth[aColumn, ARow] are = 0.....
In which event can we see the final column width for a crosstab?
I also tried to create at run time a report equivalent to the crosstab. The
rows are definitively longer than a page width, even in landscape mode. But
once more I cannot create labels past the width of the band. I put them in
a region, set the region ReprintOnOverflow to true. Once a label left
position reaches the width of the band, all the next left positions stays
fixed (10.5). Same, I cannot expand the width of the region past the width
of the band, at run time ?????
How can I create this "matrix" kind of report that will span several pages
horizontally, with slanted labels as headers???? The columns and headers
must be created at run time since we do not know how many there are ahead of
time. This does not sound like an unusual kind of report....
Thank you for your help.
Danielle
This discussion has been closed.
Comments
Unfortunately ReportBuilder and the TppCrosstab component were not designed
to handle this type of report. Determining where each column is in a
crosstab can be very difficult because RB measures them based on the text
size. This could take a lot of trial and error before you get it right. My
suggestion would be to perhaps measure the text manually before the crosstab
generates to get an idea of how wide each column will be.
ReportBuilder is also not designed to break to the next page when it runs
out of horizontal space. This logic is built into the crosstab component
for its specific use. One other option you might exploer is taking a look
at a third party crosstab component like Grid Pack. I understand it is more
advanced than the built-in crosstab component and may have features that
could help you. http://www.planitechnologies.com/
--
Regards,
Nico Cizik
Digital Metaphors
http://www.digital-metaphors.com
Nico Cizik
Digital Metaphors
http://www.digital-metaphors.com