How do I add a second page in Jaspersoft iReport Designer 4.7

I have found another way to add pages to a report (using iReport 5.0.1): You can just add a new detail region, set its height to be the same as the first and put the contents of the 2nd page in this new region. Actually you can add as many detail regions as needed thus creating a multipage report.


Add a new detail band and put break page inside it.
This new detail content will be displayed in second page.

enter image description here


You can accomplish this a couple ways.

  • The first is actually creating 2 separate reports and merging them. Basically you draw out each page how you want it to look. On export, you create the 2 JasperPrint instances of the report, and then batch export them.

    public byte[] generateReport(JasperPrint jasperPrint1, JasperPrint jasperPrint2) {
      //throw the JasperPrint Objects in a list
      List<JasperPrint> jasperPrintList = new ArrayList<JasperPrint>();
      jasperPrintList,add(jasperPrint1);
      jasperPrintList,add(jasperPrint2);
    
    
      ByteArrayOutputStream baos = new ByteArrayOutputStream();     
      JRPdfExporter exporter = new JRPdfExporter();     
      //Add the list as a Parameter
      exporter.setParameter(JRExporterParameter.JASPER_PRINT_LIST, jasperPrintList);
      //this will make a bookmark in the exported PDF for each of the reports
      exporter.setParameter(JRPdfExporterParameter.IS_CREATING_BATCH_MODE_BOOKMARKS, Boolean.TRUE);
      exporter.setParameter(JRExporterParameter.OUTPUT_STREAM, baos);       
      exporter.exportReport();      
      return baos.toByteArray();
    }
    
  • The second option is to go the Subreport route. Basically you create the first page of the report. Then you create the second page of the report. Then in iReport you can add the subreport in to Summary Band, passing any needed information that it needs to run (i.e Database Connection, datasource, parameters, etc.). Under the properties for the overall report you will want to make sure Summary on new page is selected so that the the subreport will print on its own page.