uygulamada aşağıdaki hatayı alıyorum

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Tahsinzencir
Üye
Mesajlar: 48
Kayıt: 15 May 2009 12:16

uygulamada aşağıdaki hatayı alıyorum

Mesaj gönderen Tahsinzencir »

Arkadaşlar bu sorunumu aşamadım amatörce bir program hazırlıyorum yardımcı olan arkadaşlara teşekkür ederim.

Kod:
QSaKalanAlacak.Close;
QSaKalanAlacak.Open;
if E6.Text='' then
QSaKalanAlacak.Filter:='';
QSaKalanAlacak.Filter:='[BaSan]='+#39+E6.Text+'*'+#39;
QSaKalanAlacak.Filtered:=True;
x:=StrToInt(DBEdit1.Text);
y:=StrToInt(DBEdit3.Text);
sonuc:=x-y;
L10.Text:=FloatToStr(sonuc);
LL10.Caption:=FormatFloat('#,##0.00',StrToFloatDef(L10.Text,0));

L10.Text ne '0' yazsın istiyorum.

Hata;
"is not a valid integer value"

Kodun neresinde hata yapıyorum acaba

DBEdit3
QSaKalanAlacak TQuery ya bağlı

TQuery nin TStrings i aşağıdaki gibidir.

select BaSan, sum(Tutar) Tu From SHareket
where HTip in("Şantiye","Taşeron") and HarTip in ("Tahsilat","Çek Girişi","Alacak")
Group By BaSan
ertank
Kıdemli Üye
Mesajlar: 1650
Kayıt: 12 Eyl 2015 12:45

Re: uygulamada aşağıdaki hatayı alıyorum

Mesaj gönderen ertank »

Merhaba,

Aldığınız hata yüksek ihtimal ile X ve Y değişkenlerine veri ataması yaptığınız satırların birisinden geliyor.
Kodu aşağıdaki şekilde yeniden düzenlemenizde fayda var.

Kod: Tümünü seç

 QSaKalanAlacak.Refresh();  // Close ve ardından yapılacak Open komutlarına göre daha hızlı verilerin güncellenmesini sağlayacaktır
 QSaKalanAlacak.Filtered := False;  // İkinci defa aynı kod çalışır ise filtre aktir olması hataya sebep verebilir.
 if E6.Text=EmptyStr then QSaKalanAlacak.Filter:='';
 QSaKalanAlacak.Filter := '[BaSan]=' + AnsiQuotedStr(E6.Text + '*', '"');  // Arama kelimesi içinde çift tırnak olabilir. AnsiQuotedStr() kullanmakta fayda var.
 QSaKalanAlacak.Filtered := True;
 X := StrToIntDef(DBEdit1.Text, 0);  // Dönüşüm yapılamaz ise değeri sıfır olsun
 Y := StrToIntDef(DBEdit3.Text, 0);  // Dönüşüm yapılamaz ise değeri sıfır olsun
 Sonuc := X - Y;
 L10.Text := FloatToStr(Sonuc);
 LL10.Caption := FormatFloat('#,##0.00', Sonuc);  // Sonuc değişken değerini string yapıp ardından yeniden float değere dönüştürmek yerine Sonuc değişkeni direk kullanılması daha doğru.
Tahsinzencir
Üye
Mesajlar: 48
Kayıt: 15 May 2009 12:16

Re: uygulamada aşağıdaki hatayı alıyorum

Mesaj gönderen Tahsinzencir »

teşekkürler ertank kardeş hemen deneyeceğim iyi çalışmalar
Tahsinzencir
Üye
Mesajlar: 48
Kayıt: 15 May 2009 12:16

Re: uygulamada aşağıdaki hatayı alıyorum

Mesaj gönderen Tahsinzencir »

Allah cc razı olsun şimdi mantığı anladım. Yaş ileri olunca mantık ağır çalışıyor sevgili ertank kardeş
Cevapla