請教DBGrid的問題 |
答題得分者是:T.J.B
|
terrychen
尊榮會員 發表:90 回覆:794 積分:501 註冊:2003-05-01 發送簡訊給我 |
請教各位先進
小弟在DBgrid中處理以下欄位
建議售價 折讓金額 折扣金額 銷售金額
1.銷售金額 = 建議售價- 折扣金額 or
2.銷售金額 = 建議售價* (折讓金額/100) or
3.銷售金額 = 建議售價* (折讓金額/100)-折扣金額
因不知DBGrid該如何指定某一欄位的值
1,2兩ㄍ小弟可以算出但第三項則無法做到程式碼如下
請教各位前輩有好的方式可處理ㄇ
procedure TSale.DBGrid1ColExit(Sender: TObject);
begin
if DBGrid1.SelectedField.FieldName = 'discount' then
DM.Sale110.FieldByName('sell_price').AsInteger:= DM.Sale110.FieldByName('prodect_price').AsInteger - DBGrid1.SelectedField.AsInteger;
if DBGrid1.SelectedField.FieldName = 'discount_percent' then
DM.Sale110.FieldByName('sell_price').AsInteger:= Round(DM.Sale110.FieldByName('prodect_price').AsInteger * (DBGrid1.SelectedField.AsInteger/100));
end;
|
T.J.B
版主 發表:29 回覆:532 積分:497 註冊:2002-08-14 發送簡訊給我 |
|
terrychen
尊榮會員 發表:90 回覆:794 積分:501 註冊:2003-05-01 發送簡訊給我 |
|
T.J.B
版主 發表:29 回覆:532 積分:497 註冊:2002-08-14 發送簡訊給我 |
抱歉沒有仔細看你的問題
仔細看了一下
你這樣寫當然會找不到值(看紅色部分) 你判斷的時候可以用DBGrid1.SelectedField.FieldName
但是計算的時候就用Query1.FieldByName('XXX').Asinteger := ....較好
你試試看 例如:(原文)
procedure TSale.DBGrid1ColExit(Sender: TObject);
begin
if DBGrid1.SelectedField.FieldName = 'discount' then
DM.Sale110.FieldByName('sell_price').AsInteger:= DM.Sale110.FieldByName('prodect_price').AsInteger -
DBGrid1.SelectedField.AsInteger;<--沒有指定欄位
if DBGrid1.SelectedField.FieldName = 'discount_percent' then
DM.Sale110.FieldByName('sell_price').AsInteger:= Round(DM.Sale110.FieldByName('prodect_price').AsInteger *
(DBGrid1.SelectedField.AsInteger/100));<--這個也是
end; (修改)[看藍色部分](較理想)
procedure TSale.DBGrid1ColExit(Sender: TObject);
begin
if DBGrid1.SelectedField.FieldName = 'discount' then
DM.Sale110.FieldByName('sell_price').AsInteger:= DM.Sale110.FieldByName('prodect_price').AsInteger -
DM.Sale110.FieldByName('你的折扣金額欄位名稱').AsInteger;
if DBGrid1.SelectedField.FieldName = 'discount_percent' then
DM.Sale110.FieldByName('sell_price').AsInteger:= Round(DM.Sale110.FieldByName('prodect_price').AsInteger *
(DM.Sale110.FieldByName('你的折讓金額欄位名稱').AsInteger/100));
end; 第三項比照辦理即可 天行健
君子當自強不息~~@.@ 發表人 - T.J.B 於 2003/09/23 22:33:52 發表人 - T.J.B 於 2003/09/23 22:35:03 發表人 - T.J.B 於 2003/09/23 22:45:09 發表人 - T.J.B 於 2003/09/23 22:48:06
------
天行健 君子當自強不息~~@.@ |
terrychen
尊榮會員 發表:90 回覆:794 積分:501 註冊:2003-05-01 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |