0
目前我使用Jasper Reports按以下方式生成pdf文件。將多個相同jrxml格式的報告合併到一個文件中
我創建了一個JRXML文件「singlePagePdf.jrxml」
我宣佈一個bean如下
<bean id="singlePagePdf"
class="org.springframework.web.servlet.view.jasperreports.JasperReportsPdfView"
p:url="classpath:reports/singlePagePdf.jrxml"
p:reportDataKey="datasource">
<property name="headers">
<props>
<prop key="Content-Disposition">
attachment; filename=singlePage.pdf
</prop>
</props>
</property>
</bean>
因此,當相關的URL被稱爲我的控制器如下處理它。
@RequestMapping(value = "/generate-single-pdf", method = RequestMethod.GET)
@ResponseBody
public ModelAndView generatePageForEmployeePdf(@RequestParam("empId") String employeeId) {
List<EmployeeWork> employeeWorkDetails = employeeService.getEmployeeWorkDetails(employeeId);
JRDataSource jrDataSource = new JRBeanCollectionDataSource(employeeWorkDetails);
Map<String, Object> parameterMap = new HashMap<>();
parameterMap.put("title", "Employee Work Deails");
parameterMap.put("employee", employeeId);
parameterMap.put("datasource", jrDataSource);
return new ModelAndView("invoicePdf", parameterMap);
}
目前它成功地爲單個員工生成報告。現在我想爲同一格式的員工列表(使用相同的jrxml文件)創建報告並將其輸出到一個pdf文件(即具有多個員工工作詳細記錄的pdf文件)
任何想法?
預先感謝
您可以使用其他jrxml並將您當前的jrxml用作子報表。如果您傳遞1個用戶作爲參數,則它將只打印,否則將打印所有用戶的詳細信息。 –
謝謝@FahadAnjum。目前,我正在尋找一個工作示例,因爲在準備具有子報表參數的jrxml時有點困難。 – B378
您可以通過多種方式實現,修改報告以支持包含一個或多個僱員的查詢,子報表或只需將jasper打印添加到一起,如下所示https://stackoverflow.com/q/36929868/5292302 –