1. 概述
1.1 版本
報表伺服器版本 | 功能變更 |
---|---|
11.0 | - |
1.2 預期效果
有時我們需要選擇不同參數,呈現不同的範本內容。例如,根據無線電鈕組選擇的匯總類型,查詢顯示不同的匯總報表。如下圖所示:
1.3 實現思路
使用者需要參數元件來控制報表顯示不同的列,可有兩種實現方法:
方法一:透過條件屬性控制報表顯示不同的列。
方法二:透過 SQL 語句控制報表顯示不同的列。
2. 範例一:透過條件屬性實現
2.1 準備資料
建立資料集 ds1:SELECT * FROM 銷量
2.2 製作範本
將地區、銷售員欄位拖入儲存格,並分別設定不同的銷量求和,報表樣式設計。如下圖所示:
2.3 新增參數元件
先新增範本參數type,如下圖所示:
在參數面板新增一個「無線電鈕組元件」和「查詢元件」,無線電鈕組元件的元件名為 type。設定資料字典,自訂兩個選項,如下圖所示:
2.4 設定條件屬性
選中 A1、A2 儲存格,右鍵新增條件屬性:設定行高為 0,公式條件為 $type!='地區'。選中 A3、A4 儲存格,同樣新增條件屬性:行高為 0,公式條件為 $type!='銷售員'。如下圖所示:
儲存範本,點選「分頁預覽」即可實現效果。
2.5 效果預覽
2.5.1 PC端
如本文 1.2 節所示。
2.5.2 行動端
App 端和 HTML5 端效果如下圖所示:
3. 範例二:透過 SQL 語句實現
3.1 建立普通報表
點選「選單檔案>建立普通報表」,如下圖所示:
3.2 新增參數元件
新增「無線電鈕組元件」,將元件名稱命名為 type,並新增「查詢按鈕」如下圖所示:
3.3 準備資料
建立資料集 ds1:
SELECT ${if(type="地區","地區","銷售員")} as a, sum(銷量) num
FROM 銷量
${if(type="地區","group by 地區","group by 銷售員")}
type參數值預設為華東,如下圖所示:
3.4 製作範本
將 a 、num欄位拖入儲存格,並設定置中、邊框,如下圖所示:
3.5 設定元件參數
儲存範本,點選「分頁預覽」即可實現效果。
3.6 效果預覽
3.6.1 PC端
如本文 1.1 節所示。
3.6.2 行動端
如本文 2.5 節所示。
4. 範本下載
1)範例一:透過條件屬性實現
已完成範本,可參見:%FR_HOME%webappswebrootWEB-INF eportletsdocParameter根據參數值顯示不同的列.cpt
點選下載範本:根據參數值顯示不同的列.cpt
2)範例二:透過 SQL 語句實現
已完成範本可參見:%FR_HOME%webappswebrootWEB-INF
eportletsdocParameter使用SQL語句顯示不同的列.cpt
點選下載範本:使用SQL語句顯示不同的列.cpt