Jasper Reports: How can i have multiple growing subreports in a report? - jasper-reports

My Requirement is to show two sub reports in a Report. What I am doing is, I have created two sub-reports and put that into a report.
But the issue is that, both the sub reports are growing (i.e. their height is not static as the number of records are variable). I just want the second sub=report to appear after the end of first sub-report. How can I achieve the same?

You can use the option "Position Type" by selecting "Float" as the value. So based on the first reports size the second one will be adjusted.
Regards,
Raveendra Mutyala

You could put the second subreport inside the first subreport, in the page footer. The footer moves down when the detail band grows, so the subreport should always end up underneath the content of the first subreport.
Cheers,
Alexander

Try to add detail band as many as your subreport to your main report (You can right click the detail band and choose "Add another detail band"). And place each subreport on every detail band that you make.
Detail band have ability to shrink and grow depend on your data row and it will fit nicely to your report.

Related

The subreport repeats itself in Detail band

I am new to JasperReports, basically I want to put a subreport in a mainreport
The problem is that I put the sub report in the Detail band, so when I query a database that has multiple data the subreport will always repeat itself multiple times when I output the report to a pdf. I want a report that does not repeat itself regardless of how many data I have in the database that i connect with
I have searched the Internet and the solutions is to add
new Boolean($V{REPORT_COUNT}.intValue()==1)
in the print when expression attribute of the subreport, that does solve a part of my problem due to the fact that now my subreport only prints once but it still leaves some blank pages after my subreport is displayed
So I assume it is still repeating itself but just doesn't print the data because of the expression that I added , people say that the nature of the detail band is supposed to work that way and that I shouldn't put the subreport in the detail band, but if I put it in some other band I get this error:
Error filling print... Subreport overflowed on a band that does not support overflow.
The error above will happen if I have a lot of data to the extent that it may take up more than a page.
How do remove those blank pages? If I am ask to not put it in a detail band then what should I do? or what solution are there?
The Detail band will be generated as many times as the number of records you have in your main dataSet(populated by the top-level query).
If you want to keep the subreport in the Detail band, which is normal by the way, you can do one of these things:
either have a dummy query that returns only one record, so that the Detail band generates only once. Then, pass the report connection to your subreport. You may have done that already. This way you can run your query independently of the main report.
or leave the report as-is and add your printWhen expression ($V{REPORT_COUNT}.intValue()==1) directly on the Detail band, not on the subreport. Please note that this is just an ugly hack that may affect the report performance. Your main query still returns a lot of data that you don't use so you should consider the other options.
If you can move the subreport out of the Detail band, place it in a band that allows overflow like Title or Summary band. Then:
have your main dataSet's query empty so that no Detail band gets generated
set whenNoDataType="AllSectionsNoDetail" at the report level(in the <jasperReport> tag) so that all the other sections except the Detail get generated
exactly as in the first option above, pass the report connection to your subreport and work from there

How to make detail band height fixed in Jasper Report?

I have two reports. One is used as sub report of other.
Sub-Report is placed in the detail band of main report.
I need to display a message at the end of the last page. For this message, I am using Last Page Footer.
But the problem is, I need to display the data in Tabular Form. Data coming from Sub report is dynamic, Because of this detail band height grows dynamically and I can not get the table lines aligned properly up to the last page footer.
Can anyone guide me a solution ?
Maybe I'm not getting your point, but if you need something as close as possibile to your last tabular data (not neccesarly at the end of the last page), why don't you use the Summary band instead of the LastPageFooter?
I hope to show you what I mean with this pic:
Is this what you would like to get?
If so, just use the Summary Band in the main report after your detail band

JasperReports: sub-total in column footer below detail multiples pages

I have an invoice report. The everything works like a charm but when the detail is huge more than one page. The Detail overflow but the COLUMN FOOTER appears in every page of the report.
I would like to display the SUB-TOTALS AND OTHER COMPUTING exactly when the Detail finish and printed only once.
What I am doing wrong? Am I doing it in the wrong band?
here is the IREPORT IMAGE.
running example
Actually you are placing things in the wrong band it should be in the Summary Band. As the Column footer is meant to be footer at all the pages to the column so it will print on every single page.
But as per your requirement you need the totals at the end of the report so you can place all these elements which you have placed in the Column Footer in the Summary Band.
That should work for you.
Thanks.

Crystal Reports: How can a not on-demand subreport be displayed as a link in the main report

I am struggling to fix a subreport where data is obtained at the point when the main report is generated and the subreport to be displayed as a link, similar to an on demand subreport.
The issue that I have if I use a non on demand subreport is that it cannot be represented as a link, it is displayed inside the main report. As well as an on demand report is not suitable to my case because the data is retrieved when the subreport is opened.
I would appreciate any help.
Thanks in advance!
You have to take the another header for subreport and also drilldown the Header and on the Suppress formula write the formula Drilldowngrouplevel = 0 and for the Sub Report take the another detail section and on the supress formula write the formula Drilldowngrouplevel = 0.
This will definitely work, because I tried it.
Can you add a group level to the subreport and add a single line into the group header?
This will mean you will have to drill down twice to get the data though.

Unwanted page breaks in Jasper iReport

I am using one master reports with some static data and three subreports. Subreports can repeat zero to many times and are approximately half page long. I have put each subreport in a separate table and each such table on a separate detail band.
My problem is that each subreport always starts on a new page. They each consist of multiple detail bands that all have "Split allowed" set to true
Maybe "When No Data - No Pages" property may do what you want.