全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1576
推到 Plurk!
推到 Facebook!

DetailBand無法正常列印兩列

尚未結案
homeboy
一般會員


發表:11
回覆:11
積分:4
註冊:2007-11-20

發送簡訊給我
#1 引用回覆 回覆 發表時間:2010-04-27 15:55:32 IP:140.130.xxx.xxx 訂閱
請教各位先進:
小弟利用報表要列印出已下的功能,有利用DetailBand1元件並設定QuickRep1.Page.Columns:=2 列印 兩列,但我發現報表印出來是第一頁正確,第二頁只列印一列,第三頁正確,第四頁只印一列,變成隔一頁列印就錯誤,請各位先進幫我看看是否哪裡有錯呢?

希望的格式 印出來錯誤的格式
第一頁 第一頁
1111 6666 1111 6666
2222 7777 2222 7777
3333 8888 3333 8888
4444 9999 4444 9999
5555 5555

第二頁 第二頁
1010 1515 1010
1111 1616 1111
1212 1717 1212
1313 1818 1313
1414 1414

第三頁 第三頁
1919 2222 1515 2020
2020 2323 1616 2121
2121 2424 1717 2222
2222 2525 1818 2323
2121 1919

第四頁(依此類推)
2424
......


[code delphi]
procedure TFPNP002rep.DetailBand1BeforePrint(Sender: TQRCustomBand;
var PrintBand: Boolean);
ipage:=ipage 1;
if ipage=9 then
begin
Quickrep1.Newpage;
end;

procedure TFPNP002rep.PageHeaderBand1BeforePrint(Sender: TQRCustomBand;
var PrintBand: Boolean);
begin
ipage:=0;
end;
end;

[/code]
編輯記錄
homeboy 重新編輯於 2010-04-27 15:57:30, 註解 無‧
homeboy 重新編輯於 2010-04-27 15:58:53, 註解 無‧
homeboy 重新編輯於 2010-04-27 15:59:50, 註解 無‧
homeboy 重新編輯於 2010-04-27 16:01:48, 註解 無‧
homeboy 重新編輯於 2010-04-27 16:04:36, 註解 無‧
homeboy 重新編輯於 2010-04-27 16:07:36, 註解 無‧
homeboy 重新編輯於 2010-04-27 16:10:37, 註解 無‧
P.D.
版主


發表:571
回覆:3880
積分:3666
註冊:2006-10-31

發送簡訊給我
#2 引用回覆 回覆 發表時間:2010-05-08 21:24:49 IP:118.169.xxx.xxx 未訂閱
我沒有用QuickReport, 但看你的程式, 我懷疑問題出在你下 NewPage 的功能
1.可以嘗試先拿掉NewPage, 看看會不會有這樣的現象
2.一般我要設定newpage 我不會放在Detail上, 因為Detail未必有資料存在, 我會拉一個Footer, 然後放在那裡
homeboy
一般會員


發表:11
回覆:11
積分:4
註冊:2007-11-20

發送簡訊給我
#3 引用回覆 回覆 發表時間:2010-05-12 12:04:27 IP:163.28.xxx.xxx 訂閱
我有嘗試拿掉NewPage, 測試結果是正常的情形,但只要加入

[code delphi]
ipage:=ipage 1;
if ipage=9 then
begin
Quickrep1.Newpage;
end;
[/code]

就會出現我在上文中所提到的問題。

編輯記錄
homeboy 重新編輯於 2010-05-12 12:14:52, 註解 無‧
P.D.
版主


發表:571
回覆:3880
積分:3666
註冊:2006-10-31

發送簡訊給我
#4 引用回覆 回覆 發表時間:2010-05-12 14:29:42 IP:118.169.xxx.xxx 未訂閱
所以問題就是出在newpage, 可能放置的程序點不對(band), 可能其他原因, 或者請直接看 data band 有沒有break 或newpage 的功能可以指定, 不要用下指令的
===================引 用 homeboy 文 章===================
我有嘗試拿掉NewPage, 測試結果是正常的情形,但只要加入

[code delphi]
ipage:=ipage 1;??
if ipage=9 then?
?begin?
Quickrep1.Newpage;??
end;
[/code]

就會出現我在上文中所提到的問題。

?
smallfox
高階會員


發表:2
回覆:113
積分:128
註冊:2003-02-19

發送簡訊給我
#5 引用回覆 回覆 發表時間:2010-06-13 00:16:14 IP:211.74.xxx.xxx 訂閱
將 NewPage 移至 AfterPrint 事件中, 如何?
系統時間:2017-10-22 14:13:18
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!