每頁固定行數頁內合計

1. 概述

1.1 版本

報表伺服器版本
11.0

1.2 問題描述

文檔 每頁顯示固定行數 中,透過「條件屬性>行後分頁」實現了每頁顯示固定行數,但在其基礎上實現 頁內合計 時,使用「重複結尾行」設定「頁合計」,會出現頁合計重複出現的問題。如下圖所示:

那麼要如何實現固定行數報表中,頁合計、組合計、總合計正常顯示呢?

1.3 解決思路

利用進階分組寫分組公式,在條件屬性中設定「行前分頁」,再進行合計。

2. 範例

2.1 開啟範本

開啟範本:%FR_HOME%\webroot\WEB-INF\reportlets\doc\Advanced\Pagination\按組分頁.cpt

點選下載範本:按組分頁.cpt

2.2 設定分組

範本 按組分頁.cpt  中一個組的資料是一個「貨主地區」的全部資料,這裏將其每個組的資料再分為每 5 筆資料為一組。

1)在報表最左側插入一欄,選中 A5 儲存格,拖入資料列「訂單 ID」,「儲存格屬性>擴展」中設定擴展方向為「縱向擴展」,左父格為 B4 儲存格。如下圖所示:

3)設定 A5 儲存格的「儲存格元素>資料設定」為「分組>進階」,點選「自訂」,選擇「公式分組」,顯示模式為「普通分組」,自訂值輸入公式:CEILING(INARRAY($$$,ds1.group(訂單ID))/5) 。即每 5 筆資料為 1 組,組序號從 1 開始。

公式說明如下表所示:

公式
說明
ds1.group(訂單ID)選出資料集 ds1 中訂單 ID 的資料並分組
INARRAY($$$,ds1.group(訂單ID))/5傳回當前值在陣列中的位置,再除以 5
CEILING()

將參數沿絕對值增大的方向,舍入為最接近的整數

步驟如下圖所示:

3)修改 B5 儲存格的左父格為 A5 儲存格(即預設)。如下圖所示:

2.3 匯總計算

針對「應付金額」資料列作合計,下面分別介紹三種合計設定。

2.3.1 頁合計

「貨主地區」下每一小組訂單記錄就為一頁,頁合計即對每一小組資料進行匯總。

1)合併 B6~D6 儲存格,插入正文:「頁合計:」,左父格為 A5,不擴展,如下圖所示:

2)選擇 E6 儲存格,選擇「儲存格元素>插入公式」,公式為:sum(E5)。如下圖所示:

2.3.2 組合計

對每個「貨主地區」的所有資料進行匯總。

1)合併 B7~D7 儲存格,插入正文:「組合計:」,左父格為 B4,不擴展,如下圖所示:

2)在 E7 儲存格,選擇「儲存格元素>插入公式」,公式為:插入公式sum(E5)。如下圖所示:

2.3.3 總合計

所有資料都擴展完後進行總計。

合併 B8~D8 儲存格,插入正文:「總合計:」,E8 儲存格選擇「儲存格元素>插入公式」,公式為:sum(E5)。如下圖所示:

2.4 設定分頁

此時預覽範本,每一小組還是顯示在一頁上面,因此需要設定分頁。

選中 A5 儲存格選擇「條件屬性」,新增屬性「分頁」,選擇「行前分頁」,條件類型選擇「普通」,運算子選擇「不等於整數型態 1」,即每個地區下從小組序號為 2 的小組開始「行前分頁」,如下圖所示:

2.5 隱藏列

設定完成後隱藏 A 列。

2.6 效果預覽

2.6.1 PC 端

儲存範本,點選「分頁預覽」,效果如下圖所示:

2.6.2 行動端

App 端和 HTML5 端均支援,效果如下圖所示:

2.7 補充:設定頁碼

問題描述

上述已完成範本,以貨主地區來進行分頁,每頁 5 筆資料,此時若想要知道這是某個地區的第幾頁和這個地區共有幾頁,那麼該如何生實現呢?

解決方案

1)在報表下方插入兩個表示頁碼的公式:D10 儲存格為{A5},表示某地區當前頁數;E10 儲存格為"/" + count(A5),表示獲取該地區的頁碼有幾頁,"/" 起分隔符的作用。

2)設定 D10、E10 儲存格的左父格均為「貨主地區」所在的 B4 儲存格,並將第 10 行設定為重複結尾行。

3)由於重複結尾行的影響,需將總合計所在 B8、E8 儲存格的左父格設定為 A11,並且在 A11 儲存格中新增一個空格,使第 11 行為「空白編輯行」。

如下圖所示:

4)儲存報表,點選「分頁預覽」,即可看到當前地區的頁碼數:

注:也可以透過頁碼公式進行頁碼的顯示,可參考: 根據分組設定頁碼

3. 範本下載

已完成範本可參見:%FR_HOME%\webroot\WEB-INF\reportlets\docte\Advanced\Pagination\分組分頁合計.cpt

點選下載範本:每頁顯示動態行數.cpt

附件列表


主題: 報表應用
已經是第一篇
已經是最後一篇
  • 有幫助
  • 沒幫助
  • 只是瀏覽
中文(繁體)

滑鼠選中內容,快速回饋問題

滑鼠選中存在疑惑的內容,即可快速回饋問題,我們將會跟進處理。

不再提示

9s后關閉

獲取幫助
線上支援
獲取專業技術支援,快速幫助您解決問題
工作日9:00-12:00,13:30-17:30在线
頁面反饋
針對當前網頁的建議、問題反饋
售前咨詢
業務咨詢
電話:0933-790886或 0989-092892
郵箱:taiwan@fanruan.com
頁面反饋
*問題分類
不能為空
問題描述
0/1000
不能為空

反馈已提交

网络繁忙

反饋已提交

網絡繁忙