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

SHOWMESSAGE 把正常的運算秀出,但不知要如何套入 Table 欄位?

尚未結案
K1086
初階會員


發表:61
回覆:142
積分:40
註冊:2007-04-09

發送簡訊給我
#1 引用回覆 回覆 發表時間:2011-01-18 15:28:02 IP:114.41.xxx.xxx 訂閱

[code delphi]
procedure TUP_KeepSaleFm1.Table2CalcFields(DataSet: TDataSet);
VAR RA,R1,R2 :real;
begin
R1:= Table2Lon.AsFloat;
R2:= Table2Wid.AsFloat;
RA := Table2Totbl.AsFloat;
SHOWMESSAGE(FormatFloat('0.0',R1*R2/36));

//例如 (120R1) * (20R2)/36 = 66.67 四捨五入秀出 66.7 完全正確

//DBGrid1欄位直接輸入運算 (Table Format 格式也有定義 ##.#)

依據Showmessage 的語法可運算正確值 ,但用下列語法會自動四捨五入去掉小數點值變成 [67]
小弟有在本討論區收尋類似問題的答案,可是一直無法突破這個問題
我在想是否可以運用 SHOWMESSAGE(FormatFloat('0.0',R1*R2/36)); 這行語法
直接把SHOWMESSAGE 改成Table2Totbl.AsCurrency 讓正確值直接搬入,可是一直都無法順利完成
或是運用 RA 變數來接受,再來用 COPY 模式到Table2Totbl欄位
小弟能力不夠只好請教各位大大幫忙開釋如何解決這個問題謝謝!

另外小弟用下面寫法 但其值還是67.0 無法達到正確值 66.7 不知是那裡錯了,初學者不瞭解,煩請各位指導謝謝!


if Table2Totbl.AsCurrency = 0 then
Table2Totbl.AsCurrency := StrToFloat(Format('%2.2f',[R1*R2/36]));

[/code]
編輯記錄
K1086 重新編輯於 2011-01-18 05:40:28, 註解 無‧
K1086 重新編輯於 2011-01-18 21:41:44, 註解 無‧
K1086 重新編輯於 2011-01-18 21:44:34, 註解 無‧
K1086 重新編輯於 2011-01-18 21:49:15, 註解 無‧
K1086 重新編輯於 2011-01-18 21:51:23, 註解 無‧
K1086 重新編輯於 2011-01-18 21:52:13, 註解 無‧
K1086 重新編輯於 2011-01-18 22:01:47, 註解 無‧
系統時間:2017-12-14 2:46:42
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!