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

請問dbgrid和dbedit相加總的問題!!

尚未結案
suzukiyamaru
一般會員


發表:18
回覆:8
積分:5
註冊:2003-06-09

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-11-05 22:39:49 IP:218.160.xxx.xxx 未訂閱
請問一下大大當我dbgrid有一行要做加總的動作應該要怎麼進行呢!!是像下面這樣先判斷有幾行在作加總然後最後在跟dbedit做相加嗎!! Table2.First; while not Table2.eof do begin price:=table2.Fields[3].AsInteger; label9.Caption:=inttostr(price) ; Table2.Next; end; label9.caption:= strtoint(label9.caption dbedit1.Field.Value); 是這樣作嗎!!可是還是會有錯誤呢!!請大大教一下!!
chih
版主


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

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-11-05 22:47:03 IP:218.165.xxx.xxx 未訂閱
Table2.First; while not Table2.eof do begin price:=price table2.Fields[3].AsInteger; Table2.Next; end; if table1.State=DsBrowse then table1.Edit; //這是判斷你dbedit的DataSouce是否為可編輯狀態 table1.Fields[1].AsInteger:= table1.Fields[1].AsInteger price; table1.Post; TRY TRY SEE
stonys
初階會員


發表:64
回覆:111
積分:38
註冊:2002-09-28

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-11-05 22:54:26 IP:203.67.xxx.xxx 未訂閱
您好~ 如果您是針對一行要作加總動作可以考慮兩種做法 1.依您的寫法,但加上一個暫存變數,如下: var temp_price,price:integer begin price:=0; Table2.First; while not Table2.eof do begin temp_price:=table2.Fields[3].AsInteger; price:=price temp_price; Table2.Next; end; label9.caption:= inttostr(price); 2.拉一個Qurey元件...然後下SUM的指令: begin Query.CLOSE; Query.SQL.Clear; Query.SQL.Add('SELECT SUM(fieldname)' from TableName); Query.Open; label.caption:= inttostr(Query.FieldByName(fieldname).AsInteger); PS: label9.caption:= strtoint(label9.caption dbedit1.Field.Value); 您這行有很大的觀念錯誤 因為caption是string的型態...你卻又將string轉換成int...故可能觀念地方要再稍微加強一下,請參考!
系統時間:2024-07-01 15:01:00
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!