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

報表格式設計問題

尚未結案
葡萄糖
一般會員


發表:5
回覆:18
積分:4
註冊:2003-11-20

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-06-02 11:56:23 IP:61.218.xxx.xxx 未訂閱
各位安安: 公司要求設計類似下面的訂單報表格式 表頭 單號 日期 廠商 頁數 ---------------------- 產品名稱 定價 數量 金額 ----------------------- -----資料------ -----資料------ -----資料------ ----------------------- 本頁小計 ??? ----------------------- 總計 金額 ???? 數量 ??? 備註 (圖一) 表頭 單號 日期 廠商 頁數 ----------------------- 產品名稱 定價 數量 金額 ----------------------- -----資料------ -----資料------ -----資料------ ----------------------- 本頁小計 ??? (圖二) 當然,一個訂單可能不只只有一張報表,當有二張三張時 本頁小計要計算這張報表的金額,是計算每張自已的金額的 (圖一)就只出現在一張訂單的最後一張 (圖二)則是資料還有,須印出第二、第三頁時用的 (列印時會有好幾個訂單) 我是做到本頁小計用 TQRBand 元件 屬性 Bandtypy->rbPageFooter 能計算出本頁小計,但圖一時小計會在報表的最下面,無法做到如圖一一樣 小計能在總計的上面,那要如何才能做到以上要求 還有備註我用 TQRLabel 元件 但要如何控制粗體或是標準 各位大大,救命喔 發表人 - 葡萄糖 於 2004/06/02 13:35:04
bitylove
一般會員


發表:2
回覆:9
積分:2
註冊:2004-02-20

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-06-12 11:23:07 IP:61.62.xxx.xxx 未訂閱
那麼…是否一定要用pagefooter呢?? pagefooter是指每一張報表的頁尾…所以只會出現一次… 而且…只會出現在最下面… 如果是我的做法。我會在小計的部分…利用groupfooter來做… 你可以試試看。^^ 至於qrlabel的字型粗體或是標準或是大小… 都可以在qrlabel裡的font屬性裡設定… 不過我並不建議備註用qrlabel來顯示… 因為備註有時會不只一行… 如果用qrlabel來顯示…可能會產生某些內容不見的結果。 不知道我的解答是否是你想要的… 加油。^___^
葡萄糖
一般會員


發表:5
回覆:18
積分:4
註冊:2003-11-20

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-06-14 12:27:01 IP:61.218.xxx.xxx 未訂閱
基本上我會用pagefooter是因為他為算出每頁的小計 用groupfooter則會算出該訂單總金額 不知道有辦法能簡單的運用元件來計算 現在我是先用針對該訂單的總筆來做區分的(35筆) 每頁能印25筆,那先將groupfooter隱藏(35 25/25=2....XX) 當資料頁數跟列印頁數不同時,表示尚有資料要印(資料2.列印1) 所以groupfooter是隱藏 當資料頁數跟列印頁數一樣時,表示這是最後一張(資料2.列印2) pagefooter隱藏,groupfooter出現 這樣是能達到我的要求的,但好像太複雜 所以我希望能做簡單點的程式達到要求
chih
版主


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

發送簡訊給我
#4 引用回覆 回覆 發表時間:2004-06-14 16:33:53 IP:218.165.xxx.xxx 未訂閱
1.本頁小計-->
  a.放一個QRExpr,
    屬性Master設為QuickRep1,
    屬性Expression設定為SUM(金額),
    屬性ResetAfterPrint設定為True.    2.總計-->放一個Band.設為rbSummary.
  a.放一個QRExpr在rbSummary上面,
    屬性Master設為QuickRep1,
    屬性Expression設定為SUM(金額),
    屬性ResetAfterPrint設定為True.
  b.放一個QRExpr在rbSummary上面,
    屬性Master設為QuickRep1,
    屬性Expression設定為SUM(數量),
    屬性ResetAfterPrint設定為True.
完全不用程式碼...TRY TRY SEE...
發表人 - chih 於 2004/06/14 16:40:21
葡萄糖
一般會員


發表:5
回覆:18
積分:4
註冊:2003-11-20

發送簡訊給我
#5 引用回覆 回覆 發表時間:2004-06-23 11:37:14 IP:61.218.xxx.xxx 未訂閱
好不容易有時間.. 這份報表主要在於小計部份問題 如同我開始說明的一樣 小計是計算"這張"報表紙上的金額 總計則是計算這份"訂單"的總金額 chih大大說的,我之前就做過 用 TQRBand 元件,屬性 Bandtypy->rbPageFooter 放上chih大大說的1.本頁小計,便能計算每頁小計 但列印最後一張報表紙時,小計會出現在最下面 因為用"rbPageFooter"... 還有小計不會出現總計上面如圖一 大概我沒說清楚,最後一張報表紙是一直列印的 所以只有10筆資料,他也要接著印小計跟總計等,不可以空白
chih
版主


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

發送簡訊給我
#6 引用回覆 回覆 發表時間:2004-06-23 12:24:50 IP:61.218.xxx.xxx 未訂閱
請問是否有使用rbSummary?? 我有Try 過依照你第一個POST格式資料都可以. TRY TRY SEE
sl@cableplus.com.cn
高階會員


發表:168
回覆:359
積分:130
註冊:2004-03-26

發送簡訊給我
#7 引用回覆 回覆 發表時間:2004-06-23 14:10:20 IP:218.80.xxx.xxx 未訂閱
解决方法是动态创建QLABEL
葡萄糖
一般會員


發表:5
回覆:18
積分:4
註冊:2003-11-20

發送簡訊給我
#8 引用回覆 回覆 發表時間:2004-06-24 10:18:37 IP:61.218.xxx.xxx 未訂閱
chih 大大 不知道的小計(QRExpr)是放在哪各元件上面 總計我是可以算出來勒,現在是只差小計
jumo
一般會員


發表:33
回覆:65
積分:24
註冊:2002-04-17

發送簡訊給我
#9 引用回覆 回覆 發表時間:2004-06-24 11:08:26 IP:211.21.xxx.xxx 未訂閱
提供一個方法給您試試看    1.n=總頁數 2.擅用各Band的HsChild 3.在報表上放上PageFooter(HsChild=True) ==> 每頁的小計               Detail(HsChild=True) ======> Child 報表的總計 4. if 頁次
chih
版主


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

發送簡訊給我
#10 引用回覆 回覆 發表時間:2004-06-24 11:33:08 IP:218.165.xxx.xxx 未訂閱
引言: chih 大大 不知道的小計(QRExpr)是放在哪各元件上面 總計我是可以算出來勒,現在是只差小計
小計(QRExpr)放在rbPageFooter.. 屬性Master設為QuickRep1, 屬性Expression設定為SUM(金額), 屬性ResetAfterPrint設定為True. TRY TRY SEE
葡萄糖
一般會員


發表:5
回覆:18
積分:4
註冊:2003-11-20

發送簡訊給我
#11 引用回覆 回覆 發表時間:2004-06-30 09:37:39 IP:61.218.xxx.xxx 未訂閱
我的天阿.. 我測試好幾次最後一頁小計都是在最下面 我有哪些要注意的??
chih
版主


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

發送簡訊給我
#12 引用回覆 回覆 發表時間:2004-06-30 11:34:04 IP:218.165.xxx.xxx 未訂閱
參考一下這篇.. http://delphi.ktop.com.tw/topic.php?TOPIC_ID=26567 有問題在POST... TRY TRY SEE
regwei
一般會員


發表:4
回覆:3
積分:1
註冊:2003-06-13

發送簡訊給我
#13 引用回覆 回覆 發表時間:2004-10-06 15:26:38 IP:61.218.xxx.xxx 未訂閱
葡萄糖您好! 我也遇到與您相同之困擾,不知您是否解決了! 如已解決能否傳授一下,我也是測了好一陣子, Thanks !!
葡萄糖
一般會員


發表:5
回覆:18
積分:4
註冊:2003-11-20

發送簡訊給我
#14 引用回覆 回覆 發表時間:2004-10-08 12:24:26 IP:61.218.xxx.xxx 未訂閱
基本上我已解決勒 你在報表上要放上 表頭 單號 日期 廠商 頁數 <-----TQRBand.Bandtypy->rbPageHeader ---------------------- 產品名稱 定價 數量 金額 <-----TQRBand.Bandtypy->rbColumnHeader ----------------------- -----資料------ <-----TQRBand.Bandtypy->rbDetail ----------------------- 本頁小計 ??? <------TQRBand.Bandtypy->rbGroupFooter ----------------------- 總計 金額 ???? 數量 ??? <-----TQRChildBand.ParentBand->上面小計 ----------------------- 本頁小計 ??? <-------TQRBand.Bandtypy->rbPageFooter 在TQuickRep元件(報表)的事件,OnStartPage放上TQRBand.Enabled := true (最下面小計含上面其他元件) 。 在TQRChildBand元件(總計)的事件,BeforePrint放上TQRBand.Enabled := false (含上面其他元件) 。 這樣就會達到最後一頁小計部會出現在最下面,而會因資料多寡跟著後面出現 還有最後一頁小計是要自已寫程式算出來的 在最下面的小計的事件,BeforePrint放上變數 AX := 0 在TQRBand(資料)的事件,AfterPrint放上 AX := AX Query2BDEDesigner13.AsFloat ; QRLabel24.Caption := format('%3.2n',[AX]) ; 這樣小計也能算出來 真難搞
系統時間:2024-05-17 10:05:45
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!