1. 概述
1.1 應用場景
每個項目可能會制作成千上萬張報表。用戶只想查看其中的一張或幾張,但擺在用戶面前的是成千上萬張,用戶一個一個選擇預覽十分耗時耗力。現提供一種方法,用戶可以便捷地選擇預覽自己想查看的報表。如下圖所示:
1.2 實現思路
主模板:參數面板添加下拉複選框控件,通過下拉複選框傳遞模板 URL 給報表中網頁框控件,網頁框控件顯示模板預覽效果,若選擇多個模板,以多個 sheet 方式呈現效果。
子模板:修改sheet 名稱待用。
2. 示例
2.1 子模板準備
1)打開%FR_HOME%webrootWEB-INF eportletsdocPrimaryGroupReportGroup_2.cpt,點擊sheet,鼠标右鍵選擇重命名,将 sheet 名改爲銷售員銷量表,如下圖所示:
2)打開%FR_HOME%webrootWEB-INF eportletsdocFormLineFormLineForm.cpt,點擊sheet,鼠标右鍵選擇重命名,将 sheet 名改爲産品明細表,如下圖所示:
2.2 主模板設計
2.2.1 數據準備
新建内置數據集報表列表,存儲通過 encode編碼轉換的子模板路徑。如下圖所示:
模板路徑如何實現 encode 編碼轉換示例:
銷售員銷售表路徑爲%FR_HOME%webappswebrootWEB-INF eportletsdocPrimaryGroupReportGroup_2.cpt
只需要将{reportlet:'/doc/Primary/GroupReport/Group_2.cpt'} encode轉碼 即可,
轉碼後結果爲:%7Breportlet%3A'%2Fdoc%2FPrimary%2FGroupReport%2FGroup_2.cpt'%7D 。
2.2.2 添加模板參數
選擇模板>模板參數,點擊新增模板參數,設置參數名爲report,如下圖所示:
2.2.3 模板設計
合并一些單元格,點擊控件設置,選擇網頁框控件,地址爲:${servletURL}?reportlets=%5B${report}%5D&op=view。如下圖所示:
地址解釋:網頁框使用可參考:網頁框控件,${report} 爲 report 參數傳遞過來的報表路徑,op=view 指定報表預覽方式爲分頁預覽。
2.2.4 添加下拉複選框
切換到參數面板,添加标簽控件和下拉複選框控件,設置下拉複選框控件名稱爲參數report,定義數據字典,如下圖所示:
2.3. 效果預覽
保存模板,點擊數據分析,效果如下圖所示:
注:暫不支持移動端預覽
3. 模板下載
已完成模板可參見:
%FR_HOME%webrootWEB-INF eportletsdocParameter報表通過下拉複選框動态多Sheet顯示.cpt
%FR_HOME%webrootWEB-INF eportletsdocPrimaryGroupReportGroup_2.cpt
%FR_HOME%webrootWEB-INF eportletsdocFormLineFormLineForm.cpt
點擊下載模板: