query de filter kullanımı

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
BOGACHAN
Üye
Mesajlar: 38
Kayıt: 12 May 2004 02:37
Konum: istanbbul

query de filter kullanımı

Mesaj gönderen BOGACHAN »

herkeze hayırlı ramazanlar.

adoquery ile sorgu çalıştırıyorum. sorgu sonucunda giriş miktar ve çıkış miktar hesaplanıyor. bide kalan miktar Calculated alan olarak giriş-çıkış miktar yaptım.
fakat bu Calculated alan olan kalanmiktar alanını filter ile kullanamıyorum. yada filter özelliğinde (girismiktar-çıkışmiktar)>0 şeklinde kullanmayı denedim gene olmuyor. bunu yapmanın başka yolu varmı.

ADOQuery1.Filter:='KALANMIKTAR>0';
ADOQuery1.Filtered:=true;

yada,

ADOQuery1.Filter:='(GIRISMIKTAR-CIKISMIKTAR)>0';
ADOQuery1.Filtered:=true;
Kullanıcı avatarı
bobasturk
Kıdemli Üye
Mesajlar: 1387
Kayıt: 20 May 2004 08:39
Konum: Düzce

Mesaj gönderen bobasturk »

Merhaba,

Şart kullanman gerekmiyor mu.

"eğer kalan miktar 0 dan büyükse şunu yap" gibi

kolay gelsin
Şefkat-u Merhamette Güneş Gibi Ol.
Başkalarının Kusurunu Örtmekte Gece Gibi Ol.
Sehavet-u Cömertlikte Akarsu Gibi Ol.
Hiddet-u Asabiyette Ölü Gibi Ol.
Tevazu-u Mahviyette Toprak Gibi Ol.
Ya Olduğun Gibi Görün Ya Göründüğün Gibi Ol.

Resim
Kullanıcı avatarı
sabanakman
Kıdemli Üye
Mesajlar: 3081
Kayıt: 17 Nis 2006 08:11
Konum: Ah bi Antalya olaydı keşke (Ankara)

Mesaj gönderen sabanakman »

Merhaba;
Hiç bir DataSet bileşeninde LookupField veya CalculateField üzerinden bu şekilde filtre verilemez. Bunun yerine onFilterRecord olayına kod yazmanız gerekecektir.

Kod: Tümünü seç

procedure TFormServis.ADOQuery1FilterRecord(DataSet: TDataSet;
  var Accept: Boolean);
begin
  Accept:=ADOQuery1KALANMIKTAR.AsFloat>0;
end;
bu değeri güncellemek içi ise sadece;

Kod: Tümünü seç

ADOQuery1.Filtered:=False;
ADOQuery1.Filtered:=True;
yazmak yeterli olacaktır. Kolay gelsin.
Şaban Şahin AKMAN
_________________
Derin olan kuyu değil kısa olan iptir. - .
BOGACHAN
Üye
Mesajlar: 38
Kayıt: 12 May 2004 02:37
Konum: istanbbul

TEŞEKKÜRLER

Mesaj gönderen BOGACHAN »

Arkadaşım çok teşekkür ederim. verdiğin kod çok güzel çalıştı. bende böle bişey olacağını tahmin etmiştim ama bu alanlarda nasıl filtreleme yapacağımı bilmiyordum sayende öğrenmiş oldum. tekrardan teşekkürler kolay gelsin.
Cevapla