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

預覽與列印結果不一樣..

答題得分者是:pprayer
minjiu
中階會員


發表:27
回覆:119
積分:69
註冊:2002-06-26

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-03-23 10:19:04 IP:218.164.xxx.xxx 未訂閱
請問各位有沒有遇過這樣的問題,預覽畫面都是正常(我要的結果),但實際列出來卻不一樣,請問有人知道要如何解決,謝謝!!    
    Title (Band : rbPageHeader) ==> 標題,每頁都印
 ----------------------------------
    Data Record (Band : rbDetail) ==> 資料列
 ----------------------------------
    Other Information (ChilBand) ==> 印在每頁資料列的後面    預覽畫面:
       Title 
 --------------------
    Data Record
    Data Record
    Data Record
    Data Record
    Data Record
    Data Record
 --------------------
  Other Information (程式控制,當Data Record大於20筆以上自動換頁)    實際列印:
       Title 
 --------------------
    Data Record
 --------------------
  Other Information 
 --------------------
    Data Record
 --------------------
  Other Information 
 --------------------
    Data Record
 --------------------
  Other Information 
 --------------------
    Data Record
 --------------------
  Other Information 
 --------------------
    Data Record
 --------------------
  Other Information 
 --------------------
    Data Record
 --------------------
  Other Information     程式:
iRecordCount=0,iMaxRecordPage=20,iPageCount=0皆為全域變數    procedure TfmRpt.DataBandBeforePrint(Sender: TQRCustomBand;
  var PrintBand: Boolean);
begin
  Inc(iRecordCount);
end;    procedure TfmRpt.OtherInfoBandBeforePrint(Sender: TQRCustomBand;
  var PrintBand: Boolean);
begin
  if (iRecordCount >= iMaxRecordPage) or
     ((iPageCount*iMaxRecordPage   iRecordCount) >= qrData.RecordCount) then
    PrintBand := True
  else PrintBand := False;
end;    procedure TfmRpt.OtherInfoBandAfterPrint(Sender: TQRCustomBand;
  BandPrinted: Boolean);
begin
  if BandPrinted then
  begin
    if (iPageCount*iMaxRecordPage   iRecordCount) < (qrData.RecordCount) then
        fmRpt.NewPage;        Inc(iPageCount);
    iRecordCount := 0;
  end;
end;
發表人 - minjiu 於 2004/03/23 10:21:25 發表人 - minjiu 於 2004/03/23 10:22:05
pprayer
高階會員


發表:35
回覆:185
積分:174
註冊:2002-03-13

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-03-23 10:45:24 IP:211.75.xxx.xxx 未訂閱
哦,iPageCount 沒歸零
minjiu
中階會員


發表:27
回覆:119
積分:69
註冊:2002-06-26

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-03-23 10:55:06 IP:218.164.xxx.xxx 未訂閱
我在呼叫此報表表單時,都已從重對全域變數指定值了 iRecordCount := 0; // 每頁目前列印的筆數 iMaxRecordPage := 20; // 每頁最多列幾筆 iPageCount := 0; // 目前印了幾頁
pprayer
高階會員


發表:35
回覆:185
積分:174
註冊:2002-03-13

發送簡訊給我
#4 引用回覆 回覆 發表時間:2004-03-23 11:01:44 IP:211.75.xxx.xxx 未訂閱
引言: 我在呼叫此報表表單時,都已從重對全域變數指定值了 iRecordCount := 0; // 每頁目前列印的筆數 iMaxRecordPage := 20; // 每頁最多列幾筆 iPageCount := 0; // 目前印了幾頁
請問是在Report的BeforePrint事件重設的嗎? 若不先Preview直接Print,也會如此嗎?
minjiu
中階會員


發表:27
回覆:119
積分:69
註冊:2002-06-26

發送簡訊給我
#5 引用回覆 回覆 發表時間:2004-03-23 11:28:03 IP:218.164.xxx.xxx 未訂閱
引言: 請問是在Report的BeforePrint事件重設的嗎? 若不先Preview直接Print,也會如此嗎?
我是在別個表單中Preview前就先設定了. 我剛試了直接下fmRpt.Print; 它沒反應...不給印...><
pprayer
高階會員


發表:35
回覆:185
積分:174
註冊:2002-03-13

發送簡訊給我
#6 引用回覆 回覆 發表時間:2004-03-23 12:23:03 IP:211.75.xxx.xxx 未訂閱
iRecordCount=0,iMaxRecordPage=20,iPageCount=0皆為全域變數 比較建議寫在QuickRep.OnBeforePrint (這個事件會在Preview or Print 前觸發) 試試吧。 「在別個表單中Preview前就先設定了」 <- 不知這個的意思是?
minjiu
中階會員


發表:27
回覆:119
積分:69
註冊:2002-06-26

發送簡訊給我
#7 引用回覆 回覆 發表時間:2004-03-23 12:47:21 IP:218.164.xxx.xxx 未訂閱
引言: iRecordCount=0,iMaxRecordPage=20,iPageCount=0皆為全域變數 比較建議寫在QuickRep.OnBeforePrint (這個事件會在Preview or Print 前觸發) 試試吧。 「在別個表單中Preview前就先設定了」 <- 不知這個的意思是?
@@...竟然可以了...pprayer謝謝囉!! 發表人 - minjiu 於 2004/03/23 12:59:24
系統時間:2024-05-05 18:28:24
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!