1. 概述
1.1 版本
報表伺服器版本 |
---|
11.0 |
1.2 預期效果
報表中資料是橫向擴展的,超過一頁的資料會顯示在下一頁,而每頁下面會有很大的一片空白區域,不美觀且浪費紙張。希望在一頁中第一行擴展滿後自動到下一行繼續擴展。如下圖所示:
1.3 實現思路
可以使用按欄分欄來實現這種橫向擴展自動換行的效果。
2. 範例
2.1 資料準備
建立普通報表,建立資料集ds1:SELECT * FROM 公司股票,如下圖所示:
2.2 範本設計
在報表主體設計報表樣式,如下圖所示:
儲存格設定如下表:
儲存格 | 設定 |
---|---|
A1、B1 | 合併 A1、B1 儲存格,輸入正文:某公司2~4月份股票行情 |
A2~A8 | 分別輸入正文:序號、日期、成交量、開盤量、盤高量、盤低量、收盤量;不擴展 |
B2 | 設定上父格為 B3,左父格預設,插入公式:seq(),作用是對 B3 進行列順序編號 |
B3~B8 | 分別拖入對應的資料列,橫向擴展 |
注:報表設計時,大標題必須要改寫整個分欄區域,如範例中的“某公司 2~4 月份股票行情”(大標題)所在的儲存格所在區域必須包含到 B1 儲存格。
2.3 分欄設定
完成上述設定後報表僅展示為8行,下面可以設定按欄分欄,將下一頁資料分欄到下方。這裏我們設定每一欄顯示 8 行列資料(不包括表頭)。
在菜單欄中,選擇「範本>報表分欄」,選擇「開啟」分欄:
1)分欄樣式:“按欄分欄”;
2)超過 X 按欄分欄:每欄最多 X 欄資料,超過列數的資料分到下一欄,本範例為每欄8欄資料;
3)分欄成 X 行:根據資料總列數(不含表頭)N確定,每欄列數=總行數 N / 行數 X,該選項在只要求分成固定欄數時使用,本範例不使用;
4)分欄區域:根據範例設計的範本,需要分欄的“分欄資料”為“B2:B8”;行表頭需要在分欄後重復,行表頭所在列序號為 1,所以“複製欄序列”為“1”。如下圖:
5)補充空白列:當最後一欄資料不足 8 列時,如果需要將不足的添補為空白列,則勾選此項;如果不需要添補,則此項不勾選。
2.4 注意事項
設定上面的分欄後,一頁可能會顯示出多欄,甚至最下邊的欄會顯示不全,而我們往往希望每頁能夠固定顯示兩欄或三欄。
此時我們需要保證,設計報表時:
1)如果每頁顯示兩欄或三欄,上側設計報表所佔的總行高最多不超過分頁線內高度的 1/2 或 1/3;
2)如果上側設計報表的高度不能再小(或再大),就需要調整需要分頁線的位置(參見調整:頁面設定),以保證頁面高度能顯示希望的欄數,而不至於顯示不全。