FastReport 分頁問題 |
尚未結案
|
snjcff
一般會員 ![]() ![]() 發表:1 回覆:0 積分:0 註冊:2003-10-28 發送簡訊給我 |
|
goat
高階會員 ![]() ![]() ![]() ![]() 發表:53 回覆:130 積分:134 註冊:2002-06-03 發送簡訊給我 |
參考一下吧,我以前參考別人的(作者:不詳)。 1.Report Head onBeforePrint
gpcount:=0; //紀錄群組編號 2.Group Head onBeforePrint
gpcount:=gpcount 1; //群組編號 1 代表目前的群組為第幾個群組
gP:=0; //目前群組的頁次 3.PageFooter 頁尾放上一個MEMO 並在MEMO的OnBeforePrint寫
GP:=GP 1; //計算目前群組的頁次
iF NOT FINALPASS THEN
ARR[gpcount]:=GP //紀錄該群組編號的總頁次
ELSE
AP:=ARR[gpcount]; //將總頁次放在AP這個變數 只要在這個MEMO.MEMO屬性填入 [gp]/[ap]
就大公告成啦
|
chinyu
高階會員 ![]() ![]() ![]() ![]() 發表:12 回覆:157 積分:153 註冊:2002-06-14 發送簡訊給我 |
引言: 問題如下: 我用FastReport2.45打印采購單,首先我以廠商分類,但在打印中要求頁數是 廠商一 2頁 要求打印頁數格式: 1/2,2/2 廠商二 3頁 要求打印頁數格式: 1/2,2/2,3/3 這兩個廠商是一起打印別人解法,自已沒實用過,請參考 page/totalpage 1.放一個Report Head 並在onBeforePrint 寫一command gpcount:=0; //紀錄群組編號 2.放一個Group Head 並在onBeforePrint 寫一command gpcount:=gpcount 1; //群組編號 1 代表目前的群組為第幾個群組 gP:=0; //目前群組的頁次 3.頁尾放上一個MEMO 並在MEMO的OnBeforePrint寫 GP:=GP 1; //計算目前群組的頁次 iF NOT FINALPASS THEN ARR[gpcount]:=GP //紀錄該群組編號的總頁次 ELSE AP:=ARR[gpcount]; //將總頁次放在AP這個變數 只要在這個MEMO MEMO屬性填入 [gp]/[ap] 如果Group Head 是每頁都列印的話 在第2步驟 還要在判斷Group 欄位有變化才能去執行 後來頁次的解決如下 報表標題 MyArr:=0; ------------------------ 頁首 MyPage := MyPage 1 ; MyNowPage := MyPage ; ------------------------ 群組表頭 MyArr:=MyArr 1; if FinalPass then begin MyTotalPage := Arr[MyArr] ; end ; ------------------------ 群組表尾 if not FinalPass then Arr[MyArr] := MyPage ; MyPage := 0 ; ------------------------ 頁尾 一個meno [MyNowPage] / [MyTotalPage] |
unitesys
一般會員 ![]() ![]() 發表:4 回覆:2 積分:1 註冊:2004-07-23 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |