Hi,
I want my crosstab always try to fill the page width regardless of the number of columns and I have no idea how I can do this.
For example, I have a crosstab that at page 1 contains 4 columns, and at page 2 it contains 2 columns because of data. I programmatically resize the column width before filling the report. The problem is that if I calculate the column width for the max number of columns in report (4 columns), the crosstabs that contain fewer columns (for example 2 columns at page 2) won't have the same size.
Is there any way or property so I can do this? How can I set the column width foreach crosstab depending the number of columns?
Thanks.
1 Answer:
See the ignoreWidth attribute at http://jasperreports.sourceforge.net/schema.reference.html#crosstab
HTH,
Lucian
My application is using jasperreports-3.1.4.jar and this attribute can not be used although I design jrxml with iReport 5.1.0. From what Jasper version can I use ignoreWidth attribute?
The attribute was introduced in 3.5.3.
OK. Now I can use it but my crosstab doesn't expand to page width when the crosstab is smaller than page width. I just observed that a crosstab bigger than page width will exceed the page width if the attribute is true and I don't want this. Why the crosstab doesn't expand its columns?
My bad, I haven't read your question properly, ignoreWidth won't help.
There is no builtin feature to stretch crosstab column widths to fill the entire page.
You might still be able to do something programmatically in the lines of your existing solution, but it won't be pretty. You could have the crosstab in a subreport, and prior to each subreport/crosstab occurrence compute the number of columns and dynamically alter the crosstab element in the subreport. You would use something like MyCrosstabCustomizer.getReport("crosstabSubreport.jrxml", 4) as subreport expression.
Lucianc;
Thanks for the solution. I faced same issue and trying to fix using this solution. But i found that this post is very old. Is there any support for stretch crosstab column width to fill the entire page in newer version? I upgraded jasper library to 6.3, let me know if latest version supports this.