請問一下各位大大~當計算dbgrid欄位時~會主動刪除我一比資料可否請高手相救 |
尚未結案
|
suzukiyamaru
一般會員 發表:18 回覆:8 積分:5 註冊:2003-06-09 發送簡訊給我 |
請問一下大大
假如我dbgrid中有3筆資料時,當我按下計算的button時產生計算的結果~但是同時我dbgrid中的資料也只剩下2筆了!!但是所計算的值還是3筆時所計算的答案~是否我程式有問題呢!請各位大大幫忙看一下 procedure Torder.Button2Click(Sender: TObject);
var price,amount:integer;
begin
price:=0;
amount:=0;
table2.First;
While not table2.Eof do
begin
price:=price table2.Fields[3].AsInteger;
amount:=amount table2.Fields[5].AsInteger;
table2.Next;
end;
label9.Caption:=inttostr(price*amount) ; end;
|
timhuang
尊榮會員 發表:78 回覆:1815 積分:1608 註冊:2002-07-15 發送簡訊給我 |
|
cashxin2002
版主 發表:231 回覆:2555 積分:1937 註冊:2003-03-28 發送簡訊給我 |
|
ko
資深會員 發表:28 回覆:785 積分:444 註冊:2002-08-14 發送簡訊給我 |
|
chih
版主 發表:48 回覆:1186 積分:639 註冊:2002-04-02 發送簡訊給我 |
procedure Torder.Button2Click(Sender: TObject);
var price,amount:integer;
begin
price:=0;
amount:=0;
table2.First;
While not table2.Eof do
begin
price:=price table2.FieldByName('A').AsInteger;//紅色部分請改為你相對應的欄名
amount:=amount table2.FieldByName('B').AsInteger;
table2.Next;
end;
label9.Caption:=inttostr(price*amount) ;
end;
TRY TRY SEE.. 發表人 - chih 於 2003/11/26 17:21:22
|
japhenchen
高階會員 發表:51 回覆:444 積分:184 註冊:2003-07-23 發送簡訊給我 |
|
suzukiyamaru
一般會員 發表:18 回覆:8 積分:5 註冊:2003-06-09 發送簡訊給我 |
|
suzukiyamaru
一般會員 發表:18 回覆:8 積分:5 註冊:2003-06-09 發送簡訊給我 |
|
timhuang
尊榮會員 發表:78 回覆:1815 積分:1608 註冊:2002-07-15 發送簡訊給我 |
|
KEVINDDT
一般會員 發表:0 回覆:1 積分:0 註冊:2003-11-12 發送簡訊給我 |
For 2nd Question:
Wrong Calculation Procedure in While-loop
Make another variable
recordAmount : Double; in While-loop For 1st Question:
Try To Pop out a Simple MessageBox at the end of Button2Click Event
Return Number Of Record In the TDBGrid....
If it is the same record counts, try Refresh...
if it is not, something wrong in your codes
|
japhenchen
高階會員 發表:51 回覆:444 積分:184 註冊:2003-07-23 發送簡訊給我 |
檢查一下你的程式里面是不是有錯誤或多餘的迴圈(for .. 或while)
不過建議你把你的程式貼出來先,讓大家幫你分析囉 如果你這樣把table逐筆讀出逐筆計算的話,會不會太傷效率咧?可能的話,你用個query元件來做這樣的事,用一句SQL查詢句就可以完成你要的工作,效率會差很多哦~~~~
query2.close;
query2.sql.clear;
query2.sql.add('select sum(price*amount) as totalsum from table2');
query2.sql.add('where orderno>=0 and orderno<=100'); //示範查詢條件,依自己的需求來定
query2.execsql;
query2.open;
label9.caption:=query2.fieldbyname('totalsum').asString;
query2.close; 我懂的不多,懂的也不盡然是最佳的寫法,但求我懂的東西,能在大家的討論中,愈辯愈明~
|
suzukiyamaru
一般會員 發表:18 回覆:8 積分:5 註冊:2003-06-09 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |