作者:JB
在此篇文章會介紹如何修改Rdlc報表做分頁。
此文章仍是沿用既有的專案做修改。
此文章仍是沿用既有的專案做修改。
3.
在Tablix群組,輸入「群組依據」為
= Int((RowNumber(Nothing)-1)/5)
按下「確定」。
※此公式意指不對任何欄位做群組,而是單純以RowNumber做每5筆分頁。
= Int((RowNumber(Nothing)-1)/5)
按下「確定」。
※此公式意指不對任何欄位做群組,而是單純以RowNumber做每5筆分頁。
5.
但是到這邊執行起來的話,會出現一個error:
「‘Tablix1’ 的排序運算式使用函數 RowNumber。排序運算式中不能使用 RowNumber。」
原來我們剛剛加了群組後,報表會自動把群組的欄位(這邊是RowNumber)當成排序的條件!
所以我們必須自行刪除這個排序條件。
點選【資料列群組】下方的【Group1】右邊的箭頭,選擇【群組屬性】。
開啟群組屬性視窗後, 到「排序」頁面下,點選右邊的排序依據,然後【刪除】它。 (如下圖)
刪除後,先別急著關閉群組屬性 …
「‘Tablix1’ 的排序運算式使用函數 RowNumber。排序運算式中不能使用 RowNumber。」
原來我們剛剛加了群組後,報表會自動把群組的欄位(這邊是RowNumber)當成排序的條件!
所以我們必須自行刪除這個排序條件。
點選【資料列群組】下方的【Group1】右邊的箭頭,選擇【群組屬性】。
開啟群組屬性視窗後, 到「排序」頁面下,點選右邊的排序依據,然後【刪除】它。 (如下圖)
刪除後,先別急著關閉群組屬性 …
6.
雖然在上面的步驟已經解決了把RowNumber當成排序條件的錯誤。 但是這樣還不能成功分頁。
必須再做以下設定,一樣是在「群組屬性」→「分頁符號」頁面下,勾選
必須再做以下設定,一樣是在「群組屬性」→「分頁符號」頁面下,勾選
u 在群組的每個執行個體之間
u 也在群組的結尾
8.
多出一個Group1的資料行解決方式,在報表設計畫面上,直接選取Group1的整個資料行,
右鍵選擇【刪除資料行】
此時會跳出確認對話窗,請務必選擇「只刪除資料行」!
成功將Group1欄位刪除,但是仍然有群組的作用,所以分頁沒有問題!
右鍵選擇【刪除資料行】
此時會跳出確認對話窗,請務必選擇「只刪除資料行」!
成功將Group1欄位刪除,但是仍然有群組的作用,所以分頁沒有問題!
9.
至於要重新將每個分頁上面的表首欄位叫出來, 可能大家有發現在
「Tablix屬性」裡面,有選項可以設定耶! 大家可以試看看,在VS2010
Sp1 這個設定是無效的 (怒!)
要解決這個問題,請參考以下前輩的文章:
[C#][WebForm]如何固定ReportView表頭
RDLC 設計心得,重複標題,連續報表,單頁大小
但是目前測試結果,好像有時候可以有時候不行 … Orz
有興趣可以參考以下步驟試看看 …
畫面會變成這樣…
點選【資料列群組】→Group1上面的「靜態」 , 到右方的屬性將
「RepeatOnNewPage」設定為 True
要解決這個問題,請參考以下前輩的文章:
[C#][WebForm]如何固定ReportView表頭
RDLC 設計心得,重複標題,連續報表,單頁大小
但是目前測試結果,好像有時候可以有時候不行 … Orz
有興趣可以參考以下步驟試看看 …
畫面會變成這樣…
點選【資料列群組】→Group1上面的「靜態」 , 到右方的屬性將
「RepeatOnNewPage」設定為 True
10.
結論是 … 微X你又浪費我一天時間了 >_<
沒有留言:
張貼留言