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

請教如何畫DBChart

尚未結案
gold7
一般會員


發表:1
回覆:4
積分:1
註冊:2005-01-17

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-01-17 11:29:23 IP:219.249.xxx.xxx 未訂閱
想請教一下各位大大 我想用DBChart功能畫一張圖, 如何可用讀出ClientDataSet的數據型式畫圖呢? 因每次入的Parameter都不同, 如何可以將它們畫在一起? 因很多書都只是教TChart, 直接連到資料庫的table 先多謝指教了 8)
seedbcc
高階會員


發表:232
回覆:272
積分:105
註冊:2003-12-10

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-01-17 19:25:53 IP:221.169.xxx.xxx 未訂閱
可否將問題再說清楚一些
gold7
一般會員


發表:1
回覆:4
積分:1
註冊:2005-01-17

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-01-18 09:28:52 IP:218.190.xxx.xxx 未訂閱
先謝謝你了, seedbcc 我問題的詳情是這樣的: 我做了一個program, 用來記錄每天的收入與支出數據, 而一年下來, 就有很多的數據了, 所以我想畫一個圖表(線形/柱狀), 來顯示出每個月的收入及支出線 我寫的是Two-Tier的層次, 我的server那裡的ADODATASET的Command Text是這樣寫的: select SUM(CrAmount) As TIncSum from Journal where JDate >=:DF and JDate <=:DT (這是收入的, 相對支出都有另一個ADODATASET) 當我畫了一個DBChart後, 我到Series1之中, 已經設定了Dataset是這個, 但就不知如何寫指令, 可以使它自己拿取DATASET內的資料, 有沒有一些原碼可以參考, 只要看到是怎麼辦就可以了, 我看了一些參考書, 只有一本提及過, 大約是: (不記得很清楚, 不知道是否對的, 煩請指教) DataModule1.Open; DataModule1.IncomeCDS.First; Series1.x...... ; DataModule1.IncomeCDS.Next; 因我有2條線, 而且是各有X,Y軸, 不明白是如何處理, 請指教, thanks =)
Fishman
尊榮會員


發表:120
回覆:1949
積分:2163
註冊:2006-10-28

發送簡訊給我
#4 引用回覆 回覆 發表時間:2005-01-18 13:47:49 IP:210.65.xxx.xxx 未訂閱
Hi gold7,    DBChart 屬於資料感知元件,應該是被設定好後,當 DataSet 一 Open 後即自動將圖畫出來,不需像 TChart 去塞值給它,大約需設定以下幾個地方     然後開啟 DataSet 後即可! ---------------------------------- 小弟才疏學淺,若有謬誤尚請不吝指教 ----------------------------------
------
Fishman
gold7
一般會員


發表:1
回覆:4
積分:1
註冊:2005-01-17

發送簡訊給我
#5 引用回覆 回覆 發表時間:2005-01-18 17:32:35 IP:218.190.xxx.xxx 未訂閱
Fishman你好, 多謝指點 你說的開啟DataSet, 是否就是: DataModule1.IncomeCDS.Active := True; 如果是, 因為我的IncomeCDS要有一些涵數輸入了, 才會出一個值, 問題是如何可以將一系列的值連在一起出圖呢 ? thanks
gold7
一般會員


發表:1
回覆:4
積分:1
註冊:2005-01-17

發送簡訊給我
#6 引用回覆 回覆 發表時間:2005-01-18 21:19:15 IP:218.190.xxx.xxx 未訂閱
我的原碼是這樣的, 如果我的涵數'YY/MM/DD'有幾個的時候, 如何可以將它們的值連線呢? (以下的原碼只能顯示一條直線, 我其實有很多個日期都有CrAmount這個值的, 如何畫呢?) 我是初學Dephi的, 請多包涵, 如能解決, 感激不盡 !! procedure TGraph.FormCreate(Sender: TObject); begin DataModule1.DayBreakDownCDS.Params.ParamByName('YY/MM/DD').Text := '2004/12/01'; DataModule1.DayBreakDownCDS.Active:=true; series1.XValue[DataModule1.DayBreakDownCDSCrAmount.Value]; end;
Fishman
尊榮會員


發表:120
回覆:1949
積分:2163
註冊:2006-10-28

發送簡訊給我
#7 引用回覆 回覆 發表時間:2005-01-19 14:06:45 IP:210.65.xxx.xxx 未訂閱
Hi gold7,    問題應該是出在你的 SQL Command,你的 SQL Command 中並未包含有可以當為 X 軸的資料,所以結果會產生成為一調垂直的直線,請你參考以下範例試試看    http://delphi.ktop.com.tw/loadfile.php?TOPICID=19971604&CC=446656 其中,SQL Command 結果(DataSet),最少需包含兩個以上數字型或是日期型的欄位 ---------------------------------- 小弟才疏學淺,若有謬誤尚請不吝指教 ----------------------------------
------
Fishman
gold7
一般會員


發表:1
回覆:4
積分:1
註冊:2005-01-17

發送簡訊給我
#8 引用回覆 回覆 發表時間:2005-01-19 14:19:17 IP:219.249.xxx.xxx 未訂閱
Hi Fishman 多謝指教, 我亦有一個朋友提供了sql指令給我, 之後我的CDS就可以一次過讀出數據了, thanks 以下是那條sql指令, 以供其他瀏覽人參考: Select AccDate, Sum(Credit) as TotalIncome, Sum(Debit) as TotalExpense from Journal group by AccDate =)
系統時間:2024-06-24 20:48:33
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!