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

由小數點四位改為六位時

缺席
monkeyhung
一般會員


發表:51
回覆:55
積分:21
註冊:2006-12-16

發送簡訊給我
#1 引用回覆 回覆 發表時間:2007-11-02 11:50:58 IP:203.69.xxx.xxx 訂閱
各位大大好:
我原本資料庫裡原先資料型態是decmail type 18 perscsion 4
後來改為 decmail type 18 perscsion 6
而我也參加之前大大們的文章
http://delphi.ktop.com.tw/board.php?cid=30&fid=66&tid=36578
把ADOTable 的property-"EnableBCD" 設成 false
但我做下最運算時,DBGrid裡PriceU還是一樣只會顯現出四位而已
xPriceU:Double;
xPriceU:=DM1.QtmpO.FieldByName('PriceU').AsFloat /(1 (Query_PUR510M.FieldByName('Tax').AsFloat * 0.01)) ;
showmessage('xPriceU' floattostr(xPriceU)); 若是以8.95/1.17=7.64957264957265
Query_PUR510D.FieldByName('PriceU').AsString:=floattostrf(xPriceU,ffFixed,10,6);
Showmessage(Query_PUR510D.FieldByName('PriceU').AsString);
結果在DBGrid卻是出現7.6496
danny
版主


發表:100
回覆:522
積分:595
註冊:2002-03-11

發送簡訊給我
#2 引用回覆 回覆 發表時間:2007-11-03 01:31:53 IP:211.76.xxx.xxx 訂閱
可能是你選用 Double, Float 解析度的問題吧! 請改用 Currency 資料型態
請改以下紅色的部份看看

===================引 用 monkeyhung 文 章===================
各位大大好:
我原本資料庫裡原先資料型態是decmail type 18 perscsion 4
後來改為 decmail type 18 perscsion 6
而我也參加之前大大們的文章
http://delphi.ktop.com.tw/board.php?cid=30&fid=66&tid=36578
把ADOTable 的property-"EnableBCD" 設成 false
但我做下最運算時,DBGrid裡PriceU還是一樣只會顯現出四位而已
xPriceU:Currency;
xPriceU:=DM1.QtmpO.FieldByName('PriceU').AsCurrency /(1 (Query_PUR510M.FieldByName('Tax').AsCurrency* 0.01)) ;
showmessage('xPriceU' CurrToStr(xPriceU)); 若是以8.95/1.17=7.64957264957265
Query_PUR510D.FieldByName('PriceU').AsString:=CurrToStr(xPriceU,ffFixed,10,6);
Showmessage(Query_PUR510D.FieldByName('PriceU').AsString);
結果在DBGrid卻是出現7.6496
------
將問題盡快結案也是一種禮貌!
JustinShen
中階會員


發表:22
回覆:104
積分:80
註冊:2003-09-20

發送簡訊給我
#3 引用回覆 回覆 發表時間:2007-11-03 16:34:16 IP:222.188.xxx.xxx 訂閱
程式不用改,只要清除掉组件的字段定义就好了
------
====================
我为一切作努力!
Justin Shen

monkeyhung
一般會員


發表:51
回覆:55
積分:21
註冊:2006-12-16

發送簡訊給我
#4 引用回覆 回覆 發表時間:2007-11-05 11:45:22 IP:203.69.xxx.xxx 訂閱
各位大大我目前的做法就是把PriceU的資料型態改為「字串」型式。

這樣不管要取到小數幾位沒有問題。

但這樣就是在寫程式的過程中要一直在那轉換比較麻煩一點

還是各位大大有其它比較好一點的方法嗎
Stallion
版主


發表:52
回覆:1600
積分:1995
註冊:2004-09-15

發送簡訊給我
#5 引用回覆 回覆 發表時間:2007-11-05 14:25:27 IP:75.41.xxx.xxx 未訂閱
跟我之前回答的這篇有點相似!參考一下吧~
系統時間:2024-05-17 14:47:22
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!