簡體   English   中英

在 jasper 報告中將整個 sql 查詢作為參數傳遞

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM