陷入Report 無底洞,就有一堆奇怪的Report樣式要設計
Report經一事長一智又來了!這次的問題為:
RDLC如何設計群組每頁都要小計,最後再來個總計,並與資料集相連不分開
Report設計二:我要依條件分群,並且每頁幫我小計一次,最後要總計結果
就像這樣:
代碼1是一群,但可能超過一頁,也有可能不超過一頁,不管如何每頁都要小計
超過一頁的,代碼要在每一頁顯示
以上列為例,在解決之後就會覺的小計筆數是啥小
解法簡介:建立二個群組,一個群組是by條件分群,接著在建立每頁固定幾筆的子群組就可以了,
至於每頁要顯示分群條件的欄位內容,則是將屬性「KeepTogether」為True,每頁標題重覆則是標題的靜態列屬性「RepeatOnNewpage」為Ture且「KeeWithGroup」設After
Step1.
打開一個新的RDLC 檔,工具箱內插入「資料表」(這步是要多重覆
建立資料表的資料來源(這步也超重覆 詳見:這篇的Step2.
Step2.
先加入父群組,這個群組就是您要依條件群組的群組(饒舌...
Step3.
調整一下剛建的群組屬性,首先先把名稱換一下,免得與欄位名稱搞混了
分頁符號勾起來
Step4.
屬性設定好後,就點擊剛的群組右鍵加入「子群組」
Step5.
這次要建立的群組就是指定每頁要幾筆,這邊依資料量與頁寬差不多12筆放的下(記得留小計的空間)
因為在群組依據上寫上:=Int((RowNumber("gp_unitno")-1)/12) ps.記得加上「=」
Step6.
設好第二個群組,記得,屬性也是要調整一下「分頁符號」 如同Step3.分頁符號設定
設好後會像下圖一樣有多了二個欄位「一個是第一個by條件分群」另一個則是「每頁固定筆數的分群」
Step7.
接著要放下小計欄位,這欄就是要跟著「每頁固定筆數的分群」走,所以在下紅框處插入一個資料列「群組內-下方」
Step7.
總計欄則是在小計欄的「unitono」資料格點右鍵「插入資料列」>「群組外-下方」
總計欄就這樣出現了
Step8.
為了讓每頁都可以重覆(如果資料不超過一頁就不會重覆)出現分群條件的資料,
所以不需將條件分群產生的欄位刪除,但每頁固定筆數分群所產生的欄位需求上並不需要,則可以刪除(是刪除資料行)
Step9.
接著就是小計與總計的公式了,條件中是要每頁小計筆數與總共筆數,所以在此特別註明一下運算式
小計法一:可在資料來源增加一欄位,並固定放1,在透過運算式[Sum(rowcount)]的方式,如此一來,就把所每行1都加起來,幾本上上面已設定12筆為一頁,最多就是12筆,最少就看頁面上幾筆自然就會Sum的出來
小計法二:可在畫面上固定放隱藏的textbox於詳細資料中,固定給1,在Sum Report Items!textbox.value,但這個似乎僅限把小計放頁尾才可以。<<這個沒試過
總計:運算式:RowNumber(nothing)
Step10.
接著資料都設好之後,就是顯示上的問題了,每頁標題重覆是很常見的需求
在「資料列群組」中,點擊「靜態」並確認所點擊的靜態是標題之一
將屬性下紅框調整
Step11.
有些會希望如果同一個條件超過一頁的資料,可以將第一列的資料在每頁顯示
先點擊第一個by條件分群的群組,找到他的屬性,將KeepTogether為True
以上。
參考: