Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
ozcank
Üye
Mesajlar: 937 Kayıt: 28 Nis 2005 05:29
Mesaj
gönderen ozcank » 15 Şub 2006 12:01
Arkadaşlar şöyle bir kodum var ve toplam aldırırken hata veriyor yardımcı olursanız sevinirim.
Hata :" Is Not a valid floaiting point value" bu hatayı alıyorum.
Label3 Olan satırı kaldırınca hata vermiyor sadece orda takılıyor.
Kod: Tümünü seç
procedure TForm28.Button1Click(Sender: TObject);
Begin
Query1.Sql.Clear;
Query1.Sql.Add('Select * From ROKAYIT');
Query1.Sql.Add('Where ROMONTAJTAR Between :ILKM5TAR AND :SONM5TAR');
Query1.ParamByName('ILKM5TAR').AsDate:=DateTimePicker1.date;
Query1.ParamByName('SONM5TAR').AsDate:=DateTimePicker2.Date;
Query1.Open;
Label3.Caption:=FormatCurr('##,###,###,###',StrToFloat(Query1ROGENELTOPL.AsString));
Query1.refresh;
end;
hdayi
Kıdemli Üye
Mesajlar: 1284 Kayıt: 29 Oca 2004 01:53
Konum: Erciyes'in eteklerinden.
Mesaj
gönderen hdayi » 15 Şub 2006 08:03
Burayı bir kontrol et. buradan dönen değer float bir sayı değil. Hata bu yüzden.
Kolay Gelsin...
Bişnev in ney çün hikâyet mîküned
Ez cüdâyîhâ şikâyet mîküned
rsimsek
Admin
Mesajlar: 4482 Kayıt: 10 Haz 2003 01:48
Konum: İstanbul
Mesaj
gönderen rsimsek » 15 Şub 2006 10:28
Madem float bir değer dönüyor aşağıdaki gibi yazabilirsin.
Kod: Tümünü seç
...
Label3.Caption:=FormatCurr('##,###,###,###', Query1ROGENELTOPL.AsFloat);
...
Ayrıca
SELECT * ... deki
* yerine
alan isimlerini yazmanda fayda var
Bilgiyi paylaşarak artıralım! Hayatı kolaylaştıralım!!
ozcank
Üye
Mesajlar: 937 Kayıt: 28 Nis 2005 05:29
Mesaj
gönderen ozcank » 15 Şub 2006 10:06
Bu şekilde oldu fakat ben burda toplam aldırmak istiyordum bu koda nasıl ekleyebilirim?
rsimsek
Admin
Mesajlar: 4482 Kayıt: 10 Haz 2003 01:48
Konum: İstanbul
Mesaj
gönderen rsimsek » 15 Şub 2006 10:24
Kod: Tümünü seç
SELECT SUM(GENELTOPLAM) FROM ROKAYIT...
şeklinde yaz.
Bilgiyi paylaşarak artıralım! Hayatı kolaylaştıralım!!
ozcank
Üye
Mesajlar: 937 Kayıt: 28 Nis 2005 05:29
Mesaj
gönderen ozcank » 15 Şub 2006 10:46
Bu şekilde kısa yoldan yapmayı denedim ama olmadı .Yardım edermisiniz
DBGrid ekranımda bayağı alan var kısa yoldan toplam almalıyım.
Kod: Tümünü seç
Begin
Query1.Sql.Clear;
Query1.Sql.Add('Select * From ROKAYIT,SELECT SUM(ROGENELTOPL'));
Query1.Sql.Add('Where ROMONTAJTAR Between :ILKM5TAR AND :SONM5TAR');
Query1.ParamByName('ILKM5TAR').AsDate:=DateTimePicker1.date;
Query1.ParamByName('SONM5TAR').AsDate:=DateTimePicker2.Date;
Query1.Open;
Label3.Caption:=FormatCurr('##,###,###,###', Query1ROGENELTOPL.AsFloat);
Query1.refresh;
rsimsek
Admin
Mesajlar: 4482 Kayıt: 10 Haz 2003 01:48
Konum: İstanbul
Mesaj
gönderen rsimsek » 15 Şub 2006 10:54
Öyle bir yazım şekli yok maalesef
toplam alacağın alan haricindekileri tek tek
select ten sonra yazıp, en sonunda
group by da belirtmen gerekir.
Kod: Tümünü seç
SELECT ALAN1, ALAN2, ALAN3,..., SUM(TOPLANACAK_ALAN) FROM TABLO_ADI
WHERE ŞART-KOŞUL
GROUP BY ALAN1, ALAN2, ALAN3,...
Bu genel tanımlamaya göre sorguyu düzenlersin artık
Bilgiyi paylaşarak artıralım! Hayatı kolaylaştıralım!!