I want to save my Jaspersoft report in pdf. I have a master report with a parameter called 'REG_ID', which contains a subreport with a single parameter 'CLIENT_ID'. My main report is ready to go, when I click on the preview on Eclipse bottom tab is runs perfectly. I just wonder how can I correctly run it with a java application.
What I have tried so far (I know it doesn't work, it based on my current research):
JasperReport jasperMasterReport = JasperCompileManager.compileReport(masterPath);
JasperReport jasperSubReport = JasperCompileManager.compileReport(subPath);
Map<String, Object> parameters = new HashMap<String, Object>();
parameters.put("REG_ID", 56);
parameters.put("CLIENT_ID", jasperSubReport); // I need to pass an integer to this parameter, like 1
JasperPrint jasperPrint = JasperFillManager.fillReport(jasperSubReport, parameters, conn);
JasperExportManager.exportReportToPdfStream(jasperPrint, new FileOutputStream(new File("C:\\Users\\<username>\\OneDrive\\Documents\\JasperReports\\reporttest1.pdf")));
Separately both of the report run, just not together.
In master report:
<subreport>
<reportElement x="280" y="90" width="275" height="189" uuid="fadd7392-c1a8-4fa9-9728-f70ca780d105"/>
<subreportParameter name="CLIENT_ID">
<subreportParameterExpression><![CDATA[$P{CLIENT_ID}]]></subreportParameterExpression>
</subreportParameter>
<subreportParameter name="REG_ID">
<subreportParameterExpression><![CDATA[$P{REG_ID}]]></subreportParameterExpression>
</subreportParameter>
<connectionExpression><![CDATA[$P{REPORT_CONNECTION}]]></connectionExpression>
<subreportExpression><![CDATA["ClientInfo.jasper"]]></subreportExpression>
</subreport>