簡體   English   中英

Pentaho-報告工具-.prpt文件(報告模板文件)是否也包含數據源信息?

[英]Pentaho - Reporting Tool - Does the .prpt file (report template file) contains datasource information too?

我是新的Pentaho報表工具。 我有以下問題:

當我使用Pentaho Report Designer創建報告時,它輸出擴展名為.prpt的報告文件。 之后,我在互聯網上找到了一個示例,其中以下代碼用於以html格式顯示報告:|

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {  
     ResourceManager manager = new ResourceManager();  
     manager.registerDefaults();  
     String reportPath = "file:" +  
     this.getServletContext().getRealPath("sampleReport.prpt");  

     try {  
         Resource res = manager.createDirectly(new URL(reportPath), MasterReport.class);  
         MasterReport report = (MasterReport) res.getResource();  
         HtmlReportUtil.createStreamHTML(report, response.getOutputStream());  
     } catch (Exception e) {  
         e.printStackTrace();  
     }  
 }  

報告成功打印。 因此,由於我們在此處未指定任何數據源信息,因此我認為.prpt文件中包含該信息。

如果這是真的,那么Jasper報告是否比Pentaho更好,因為當我們顯示Jasper報告時,我們還必須提供數據源詳細信息,這樣我們的報告就可以靈活而且不受任何特定數據庫的約束。

不。 數據源可以存儲在prpt中,但是也可以傳遞到報表中。 通常的方法是簡單地使用JNDI,以便您可以將同一報告部署到多個測試/開發/生產環境。

您可能會從論壇中獲得更快更好的答案。 forums.pentaho.org

PRPT文件通常包含運行報告所需的所有信息。 可以通過修改從ResourceManager返回的MasterReport對象提供自己的數據源。

但是,我還必須看到有效的用例,這些操作實際上是有意義的。 為了在運行時為SQL數據源提供連接信息,通常使用Web應用程序或J2EE服務器的JNDI子系統。

那在Pentaho BI-服務器上運行的所有報告,99.99%的人沒有必要手動替換數據源來運行。 其余的0.01%是來自舊報告引擎版本的舊報告。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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