[英]Passing an entire sql query as a parameter in jasper reports
我想將整個 sql 查詢作為參數傳遞給 jasper 報告。 我嘗試使用 $P{QUERY},但它給了我一個 mysql 語法錯誤異常。 我希望它在運行時通過。 有誰知道怎么做?
示例代碼:
try {
Map<String, Object> map = new HashMap<>();
Connection conn = DatabaseConnection.getInstance().getConnection();
map.put("QUERY", "Select u.name, u.status from user_info u where u.user_name = 'Thanuj'");
JasperReport report = JasperCompileManager.compileReport("report1.jrxml");
JasperPrint jp = JasperFillManager.fillReport(report, map, conn);
JasperViewer.viewReport(jp, false);
} catch (JRException ex) {
Logger.getLogger(ReportTest.class.getName()).log(Level.SEVERE, null, ex);
} catch (SQLException ex) {
Logger.getLogger(ReportTest.class.getName()).log(Level.SEVERE, null, ex);
} catch (ClassNotFoundException ex) {
Logger.getLogger(ReportTest.class.getName()).log(Level.SEVERE, null, ex);
}
我在同事的幫助下找到了答案。 我不得不在 jasper 報告的 xml 文件(例如;report.jrxml)中將參數 ($P{QUERY}) 更改為 ($P!{QUERY})
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.