線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1170
推到 Plurk!
推到 Facebook!

QuickRep 分組問題?

尚未結案
dialog
一般會員


發表:33
回覆:18
積分:10
註冊:2002-09-07

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-01-06 18:45:49 IP:219.133.xxx.xxx 未訂閱
目的:每個分組分頁列印,同一組有多頁時,每頁列印組頭。 QRGroup1.ForceNewPage:=true; QRGroup1.ReprintonNewPage:=true; 但是當一組有多頁時,會跳頁列印。 如:一個分組有2頁時,會列印出3頁,其中第二頁無資料(隻有頁頭資料)。 怎樣處理? 另外,分組換頁時,頁碼從1開始,怎麼設定? 發表人 - dialog 於 2004/01/06 18:50:27
channel
尊榮會員


發表:67
回覆:707
積分:854
註冊:2002-05-02

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-01-06 19:45:00 IP:211.21.xxx.xxx 未訂閱
引言: 目的:每個分組分頁列印,同一組有多頁時,每頁列印組頭。 QRGroup1.ForceNewPage:=true; QRGroup1.ReprintonNewPage:=true; 但是當一組有多頁時,會跳頁列印。 如:一個分組有2頁時,會列印出3頁,其中第二頁無資料(隻有頁頭資料)。 怎樣處理? 另外,分組換頁時,頁碼從1開始,怎麼設定? 發表人 - dialog 於 2004/01/06 18:50:27
小弟也遇過這樣的情形… 小弟的解決方法如下: (1)QRGroup1.ReprintonNewPage := false; (2)將Group Header的資料搬到Page Header 以上的作法跟QRGroup1.ReprintonNewPage:=true;是同樣意思… 至於分組換頁時,頁碼從1開始,可能要自行下程式去做…也就是頁碼用TQRLabel元件自行填入頁碼數字… for Example: 在Private宣告二變數 sPage: Integer; sKeyFieldValue: String;//您作Group的欄位(也就是分頁依據的欄位值)
procedure TForm1.QuickRep1BeforePrint(Sender: TCustomQuickRep;
  var PrintReport: Boolean);
begin
  sPage := 0;
  sKeyFieldValue := Query1.FieldByName('KeyFieldValue').AsString;
end;    procedure TForm1.PageHeaderBand1BeforePrint(Sender: TQRCustomBand;
  var PrintBand: Boolean);
begin
  if sKeyFieldValue = Query1.FieldByName('KeyFieldValue').AsString then
  begin
    Inc(sPage);
    QRLabel.Caption := IntToStr(sPage);//頁碼的TQRLabel元件
  end
  else
  begin
    sPage = 1;
    QRLabel.Caption := IntToStr(sPage);//頁碼的TQRLabel元件
  end;
  sKeyFieldValue := Query1.FieldByName('KeyFieldValue').AsString;
end;
~小弟淺見,參考看看~
------
~小弟淺見,參考看看~
系統時間:2024-05-17 0:15:59
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!