En iyi yanıtlayıcılar
Küsurat Farkı

Soru
-
iyi günler,
Veri tabanımdaki kayıtlı olan değerleri toplatıyorum Sql toplattığımda sonuç 4537992,33 çıkıyor ama aşşağıdaki gibi yaptığımda
var Alacak = YevmiyeKayitSatirlari.Where(p => p.MuhFisNO == YevmiyeKayitlari[i].MuhFisNO && p.TutarTuru == "C").Sum(p => p.Tutar);
var Borc = YevmiyeKayitSatirlari.Where(p => p.MuhFisNO == YevmiyeKayitlari[i].MuhFisNO && p.TutarTuru == "D").Sum(p => p.Tutar).Value;
Alacak Değer = 4537992.3299999982
Borç Değeri = 4537992.330000001
Sebebi alanların float olmasından kaynaklı diye düşünüyorum ama tam olarak sebebini bilmiyorum. ve birinde 330000001 atarken diğerinden neden 3299999982 atıyor.
Procedurden gelen alanları CONVERT(DECIMAL(28,8),MuhFisStBORC) değiştirdiğim de sorun düzeliyor.
4537992.330000000 Şeklinde getiriyor.
kolay gelsin.
- Düzenleyen A_BLR 5 Nisan 2016 Salı 11:57
Yanıtlar
-
evet sebebi float olmasından. Sebebini anlamak istiyorsan;
http://www.freesoft.org/CIE/RFC/1832/9.htm
http://www.freesoft.org/CIE/RFC/1832/10.htm
http://www.freesoft.org/CIE/RFC/1832/12.htm
bunları iyice anlaman gerekiyor.
e-mail: onay[nokta]yalciner[at]hotmail[nokta]com
- Yanıt Olarak İşaretleyen Kyamuran SalibryamMicrosoft contingent staff, Moderator 3 Mayıs 2016 Salı 12:57
Tüm Yanıtlar
-
evet sebebi float olmasından. Sebebini anlamak istiyorsan;
http://www.freesoft.org/CIE/RFC/1832/9.htm
http://www.freesoft.org/CIE/RFC/1832/10.htm
http://www.freesoft.org/CIE/RFC/1832/12.htm
bunları iyice anlaman gerekiyor.
e-mail: onay[nokta]yalciner[at]hotmail[nokta]com
- Yanıt Olarak İşaretleyen Kyamuran SalibryamMicrosoft contingent staff, Moderator 3 Mayıs 2016 Salı 12:57
-
-
CetinBasoz Abi SQL Server Veritabanı ancak daha önce kullanılan bir veritabanı olduğu için alanları değiştirmede sıkıntı yaşıyorum bazı sebeplerden dolayı CONVERT(DECIMAL(28,8) ile sorunu çözdüm.
Önay YALÇINER Abi linkleri inceleyeceğim anlamaya çalışacağım anlamadığım yer olduğunda yardımını isteceğim :)
teşekkürler,
kolay gelsin.