Alan tipi

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
loxka
Üye
Mesajlar: 214
Kayıt: 18 Ağu 2003 01:10

Alan tipi

Mesaj gönderen loxka »

Kod: Tümünü seç

table2GenelTutar.Value:=strtoFloat(edit1.Text);
şeklindeki kod

Kod: Tümünü seç

" is not a valid floating point value.
hatası veriyor.... Genel Tutar alanı currency tipi bir alan..
Yardımlarınız için teşekkür ederim..
Kullanıcı avatarı
mussimsek
Admin
Mesajlar: 7604
Kayıt: 10 Haz 2003 12:26
Konum: İstanbul
İletişim:

Mesaj gönderen mussimsek »

Edit'in içinde sayıdan başka bir karakter, mesela harf var veya ondalık kısım kullanıyorsan ayıracın uyumsuz. . (nokta) veya , (virgül) kullanılır genelde. Bunu Windows ayarlarından (Bölgesel Ayarlar-Regional Settings) alır. Değiştirerek bir dene.

Kolay gelsin.
loxka
Üye
Mesajlar: 214
Kayıt: 18 Ağu 2003 01:10

Mesaj gönderen loxka »

Kod: Tümünü seç

procedure TForm3.Button1Click(Sender: TObject); 
var 
topla:real; 
begin 
table2GenelTutar.Value:=strtofloat(edit1.Text); 
table2.Post; 
Table2.first; 
topla:=0; 
while not table2.eof do 
begin 
topla:=topla +Table2tutar.AsFloat ; 
Table2.next; 
Edit1.Text:=floattostr(topla); 
end; 
end; 
end.
Hocam Bilgisayarımda YTL yaması yoktu :oops: . Şimdi yükledim fakat yine aynı hata tekrarlanıyor, Yardımlarınız için teşekkür ederim
Kullanıcı avatarı
lazio
Moderator
Mesajlar: 1527
Kayıt: 11 Tem 2003 04:55
Konum: İstanbul

Mesaj gönderen lazio »

Basamak Ayıracı olarak herhangi bir sperator kullanmadan dene (nokta, v,rgül vs.). Sadece Decimal Sperator olarak Denetim masasındaki işareti kullan.
DeveloperToolKit

..::|YeşilMavi|::..
loxka
Üye
Mesajlar: 214
Kayıt: 18 Ağu 2003 01:10

Mesaj gönderen loxka »

Aynen dediğiniz gibiydi zaten hocam, özel bir ayıraç kullanmıyorum, fakat alan tipleri bende "N" numeric, ondanmı kaynaklandı bu dedim , Money olarak değiştirdim sorun devam etti.
İlginç olan hatayı Projectin sonuna atıyor artık.
Birde alanın curreny properties niteliği "true"..
İlginiz için teşekkür ederim.
Kullanıcı avatarı
aslangeri
Moderator
Mesajlar: 4322
Kayıt: 26 Ara 2003 04:19
Konum: Ankara
İletişim:

Mesaj gönderen aslangeri »

s.a.
ilk sorunuzdaki hatanın sebebi edit in içi boş olduğu için veriyordu.
strtofloat tarzı çevirme işlemlerinden önce textin geçerli olup olmadığını kontrol etmelisiniz.
XXXXX is not a valid floating point value
hatası almaya devam ediyorsanı XXXXX kısmını bi inceleyin.
o değer geçerli değil. nokta ve virgül ikilisini bu mesajda kontrol edin.
o na göre değer girin.
kolay gelsin.
Duyduğun Şeylerin Söylediklerim Olduğuna Eminim Ama
Anladığın Şeylerin Anlatmak İstediklerim Olduğuna Emin Değilim
Kullanıcı avatarı
rsimsek
Admin
Mesajlar: 4482
Kayıt: 10 Haz 2003 01:48
Konum: İstanbul

Re: Alan tipi

Mesaj gönderen rsimsek »

Şu şekilde deneyebilirsin;

Kod: Tümünü seç

try
  table2GenelTutar.AsFloat := strtoFloat(edit1.Text);
except
  table2GenelTutar.AsFloat := 0.0;
end;
Çünkü Edit1.Text float veya sayısal bir alan değilse ne yapacağını garantilersin :idea:
Bilgiyi paylaşarak artıralım! Hayatı kolaylaştıralım!!
Cevapla