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

急......Master/Detail QuickRep有關SubDetail的資料筆數小計問題

尚未結案
cashxin2002
版主


發表:231
回覆:2555
積分:1937
註冊:2003-03-28

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-03-28 18:13:19 IP:66.192.xxx.xxx 未訂閱
各位前輩﹒﹒﹒ 小弟在做Master/Detail的QuickRep時﹐不知該如何合計每個SubDetail中的資料筆數﹐比如部門資料庫和職員資料庫是Master/Detail的關聯性資料庫﹐將部門做為Master進行Master/Detail報表制作﹐那該如何將每個部門中的職員資料筆數合計出來并在報表中顯示﹖ (我是使用Table的資料集元件﹐并想將產生后的資料筆數放在Group Footer Band中) 懇請各位前輩多多指教﹒謝謝﹗ 忻晟 忻晟
------
忻晟
chih
版主


發表:48
回覆:1186
積分:639
註冊:2002-04-02

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-03-28 19:53:19 IP:61.216.xxx.xxx 未訂閱
你的跳頁條件應該是部門代號吧...設一定全域變數xCount, Group Head-BeforePrint>xCount:=0 rbDetailAfterPrint->xCount:=xCount 1 Group Footer BandBeforePrint用一各QRLabel.Caption:=inttostr(xCount) TRY TRY SEE
cashxin2002
版主


發表:231
回覆:2555
積分:1937
註冊:2003-03-28

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-03-28 20:08:03 IP:66.192.xxx.xxx 未訂閱
chih 前輩安安.    小弟是新手,請問跳頁條件該在哪里設定,如遵前輩所授,設一全域全數,請問該程式碼該寫在何處,程式碼之前有何宣告?    感恩賜教!    
引言: 你的跳頁條件應該是部門代號吧...設一定全域變數xCount, Group Head-BeforePrint>xCount:=0 rbDetailAfterPrint->xCount:=xCount 1 Group Footer BandBeforePrint用一各QRLabel.Caption:=inttostr(xCount) TRY TRY SEE
忻晟
------
忻晟
chih
版主


發表:48
回覆:1186
積分:639
註冊:2002-04-02

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-03-28 20:29:35 IP:61.216.xxx.xxx 未訂閱
hi..cashxin2002 跳頁條件->QRGroup有一各Expression,裡面要設定部門代號這各欄位.. Var Form1: TForm1; xCount:integer;//全域變數 Implementation {$R *.dfm} . . . 這樣不知道清不清楚ㄋ?? TRY TRY SEE
引言: chih 前輩安安. 小弟是新手,請問跳頁條件該在哪里設定,如遵前輩所授,設一全域全數,請問該程式碼該寫在何處,程式碼之前有何宣告? 感恩賜教!
發表人 - chih 於 2003/03/28 20:31:27
cashxin2002
版主


發表:231
回覆:2555
積分:1937
註冊:2003-03-28

發送簡訊給我
#5 引用回覆 回覆 發表時間:2003-03-28 20:40:36 IP:66.192.xxx.xxx 未訂閱
前輩安安.    小弟將程式碼Post,請前輩指教. var xCount:Integer; . . . procedure TForm13.GroupHeaderBand1BeforePrint(Sender: TQRCustomBand;   var PrintBand: Boolean); begin   xCount:=0; end;    procedure TForm13.DetailBand1AfterPrint(Sender: TQRCustomBand;   BandPrinted: Boolean); begin     xCount:=xCount+1; end;    procedure TForm13.GroupFooterBand1BeforePrint(Sender: TQRCustomBand;   var PrintBand: Boolean); begin   QRLabel16.Caption:=inttostr(xCount); end;    小弟已照前輩所授更新此程式碼,但在GroupFooterBand里的QRLable16.Caption 所顯示的值都為0,如果將以上TForm13.DetailBand1AfterPrint 這段程式碼寫在 QRSubDetailAfterPrint事件中,QRLable16.Caption顯示的所有值都會為1,不知是哪里的問題?另外,請問在執行此程式時,在列印預覽的視窗中就應該可以看到 其中的每個SubDetail合計的數值了嗎?還是一定要在列印后才看得到?    謝謝賜教.    
引言: chih 前輩安安. 小弟是新手,請問跳頁條件該在哪里設定,如遵前輩所授,設一全域全數,請問該程式碼該寫在何處,程式碼之前有何宣告? 感恩賜教!
引言: 你的跳頁條件應該是部門代號吧...設一定全域變數xCount, Group Head-BeforePrint>xCount:=0 rbDetailAfterPrint->xCount:=xCount 1 Group Footer BandBeforePrint用一各QRLabel.Caption:=inttostr(xCount) TRY TRY SEE
忻晟
忻晟
------
忻晟
chih
版主


發表:48
回覆:1186
積分:639
註冊:2002-04-02

發送簡訊給我
#6 引用回覆 回覆 發表時間:2003-03-28 20:49:50 IP:61.216.xxx.xxx 未訂閱
跳頁條件有設定嗎??你的條件應該不需要用到SubDetail... 你先參考一下底下這一篇範例..調整一下你的設定..不行在post.. http://delphi.ktop.com.tw/topic.php?TOPIC_ID=26567 TRY TRY SEE
T.J.B
版主


發表:29
回覆:532
積分:497
註冊:2002-08-14

發送簡訊給我
#7 引用回覆 回覆 發表時間:2003-03-31 15:13:22 IP:61.220.xxx.xxx 未訂閱
hello cashxin2002 :    1: 你把 TForm13.GroupHeaderBand1BeforePrint 事件裡的程式碼 搬到TForm13.QuickRep1BeforePrint此事件裡 2: 然後TForm13.DetailBand1AfterPrint 事件裡的程式碼 搬到TForm13.DetailBand1BeforePrint 此事件裡 3: TForm13.GroupFooterBand1BeforePrint 事件裡的程式碼不要動 要注意
procedure TForm13.DetailBand1AfterPrint(Sender: TQRCustomBand;
BandPrinted: Boolean);
begin
  xCount:=xCount 1;
end;
做加1的動作必須是你放該欄位值的那個band 如此應該可以了 天行健 君子當自強不息~~@.@
------
天行健
君子當自強不息~~@.@
cashxin2002
版主


發表:231
回覆:2555
積分:1937
註冊:2003-03-28

發送簡訊給我
#8 引用回覆 回覆 發表時間:2003-03-31 15:53:09 IP:66.192.xxx.xxx 未訂閱
真的謝謝各位前輩的指教﹒﹒﹒    為了這個問題﹐已經兩天沒有好好睡覺了﹐目前測試的結果已經可以顯示其Subdetail中的資料筆數小計了﹐但出現這樣一個問題﹐如果資料庫里沒有資料的話﹐也會顯示一筆資料﹐但當資料庫里有資料的時候﹐所有的小計顯示就正常了﹒﹒﹒ 還要再謝謝
------
忻晟
T.J.B
版主


發表:29
回覆:532
積分:497
註冊:2002-08-14

發送簡訊給我
#9 引用回覆 回覆 發表時間:2003-03-31 16:14:50 IP:61.220.xxx.xxx 未訂閱
引言: 真的謝謝各位前輩的指教﹒﹒﹒ 為了這個問題﹐已經兩天沒有好好睡覺了﹐目前測試的結果已經可以顯示其Subdetail中的資料筆數小計了﹐但出現這樣一個問題﹐如果資料庫里沒有資料的話﹐也會顯示一筆資料﹐但當資料庫里有資料的時候﹐所有的小計顯示就正常了﹒﹒﹒ 還要再謝謝>< face="Verdana, Arial, Helvetica"> 如果當資料庫沒有資料的時候 你繼續讓報表跑出來 就會有也會顯示一筆資料的情形產生(應該是說小計還是1) 因為是這個原因 xCount:=xCount 1; 所以你要做判斷 如果有資料 才跑報表 沒有資料的話 就擋掉 才不會有這種情形產生 天行健 君子當自強不息~~@.@
------
天行健
君子當自強不息~~@.@
chih
版主


發表:48
回覆:1186
積分:639
註冊:2002-04-02

發送簡訊給我
#10 引用回覆 回覆 發表時間:2003-03-31 16:29:15 IP:211.74.xxx.xxx 未訂閱
在QuickRep的QueryOpen時你就要先判斷是不是無資料,如果無資料在列印,你應該是沒有做判斷,所以你講的最後一點基本上是不可能發生的 TRY TRY SEE
引言:如果資料庫里沒有資料的話﹐也會顯示一筆資料﹐
cashxin2002
版主


發表:231
回覆:2555
積分:1937
註冊:2003-03-28

發送簡訊給我
#11 引用回覆 回覆 發表時間:2003-03-31 19:51:48 IP:63.84.xxx.xxx 未訂閱
chih & T.J.B 前輩:    真的謝謝兩位的賜教,讓我可以學到新的東東,小弟是新學者,所以今后還請兩位前輩及其它的前輩多多指點,在此再執以誠意感謝.    結案者只能選一位,真的是不好意思,只能選擇兩位前輩中的一位,所以請另一位多多見諒...    
------
忻晟
系統時間:2024-05-04 20:52:39
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!