Hayırlı günler biraz fazla soru soruyorum ama kusura bakmayın. Benim yapmak istediğim Stok numarasını "E1"e seri numarasını "E2"ye giriyorum
Bu iki değere göre ADOQuery_Garanti'de sorgulama yapsın ve değer bulunursa
E13.text:= 'GARANTİSİ DEVAM EDİYOR' yazsın bulunmazsa yazmasın istiyorum.
Aşağıdaki kodda sorgulama yapıyor ama E2'ye göre yapıyor. Ben hem E1'e hemde E2'ye göre
sorgulama veya filtreleme yapması istiyorum.
Bu konuda bana yardımcı olursanız memnun olurum.
procedure TForm1.E2Exit(Sender: TObject);
var
Tarih1, Tarih2 : TDate;
fark : Integer;
Begin
ADOQuery_Garanti.Filter:='A1='+QuotedStr(E1.Text);//kriter // STOK VE SERİ GARANTİ SORGULA
ADOQuery_Garanti.Filter:='A2='+QuotedStr(E2.Text);//kriter // STOK VE SERİ GARANTİ SORGULA
ADOQuery_Garanti.Filtered:=true;
Edit4.Text:=ADOQuery_GarantiGarantiBitis.Text;
Begin
Tarih1:= StrToDate(E11.text); // İlk tarih değer
Tarih2:= StrToDate(Edit4.text); // İkinci tarih değer
fark:= trunc(Tarih2) - trunc(Tarih1) ;
if fark>-1 then
E13.text:= 'GARANTİSİ DEVAM EDİYOR' ;
end; end;
Edit1 ve Edit2'ye göre filtre yapmak.
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
-
- Üye
- Mesajlar: 30
- Kayıt: 08 Oca 2025 10:35
Re: Edit1 ve Edit23'ye göre filtre yapmak.
Merhaba,
Aşağıdaki şekilde deneyebilirsiniz
Aşağıdaki şekilde deneyebilirsiniz
Kod: Tümünü seç
ADOQuery_Garanti.Filter:='A1='+QuotedStr(E1.Text) + ' and A2=' + QuotedStr(E2.Text);
ADOQuery_Garanti.Filtered:=true;
-
- Üye
- Mesajlar: 30
- Kayıt: 08 Oca 2025 10:35
Re: Edit1 ve Edit23'ye göre filtre yapmak.
Çok sağolun hocam Allah razı olsun.ertank yazdı: 24 Şub 2025 02:54 Merhaba,
Aşağıdaki şekilde deneyebilirsinizKod: Tümünü seç
ADOQuery_Garanti.Filter:='A1='+QuotedStr(E1.Text) + ' and A2=' + QuotedStr(E2.Text); ADOQuery_Garanti.Filtered:=true;
Re: Edit1 ve Edit2'ye göre filtre yapmak.
Forumu kurma amacımız zaten soru sorulması 
sql, code vs için tag kullanırsan daha okunaklı olacak.
Ben olsam ADOQuery_Garanti yerine Q_Garanti yada qry_Garanti şeklinde standart bir kısaltmaya giderdim.
Yazdığını sql server a yıkmaya alıştır, önceliğini sql e vermen, hem sorunları kolaylaştırırsın hemde sql öğrenmeyi hızlandırırsın.
string ifadelerin '' (boşluk) yada space ile olma ihtimalini denetlemelisin. yani null ile '' farklı iki değerdir.
fikir versin, buna where ekleyerek gereksiz kayıtları azaltarak performans sağlarsın. parametreler ile de istediğin değerleri sorgularsın

sql, code vs için tag kullanırsan daha okunaklı olacak.
Ben olsam ADOQuery_Garanti yerine Q_Garanti yada qry_Garanti şeklinde standart bir kısaltmaya giderdim.
Yazdığını sql server a yıkmaya alıştır, önceliğini sql e vermen, hem sorunları kolaylaştırırsın hemde sql öğrenmeyi hızlandırırsın.
string ifadelerin '' (boşluk) yada space ile olma ihtimalini denetlemelisin. yani null ile '' farklı iki değerdir.
fikir versin, buna where ekleyerek gereksiz kayıtları azaltarak performans sağlarsın. parametreler ile de istediğin değerleri sorgularsın
Kod: Tümünü seç
SELECT t.sth_tarih,
(CASE WHEN DATEDIFF(day, CAST(GETDATE() AS DATE), CAST(t.sth_tarih AS DATE) )>8
THEN 'GARANTİSİ DEVAM EDİYOR'
ELSE 'Garinti dışı'
END) as Garanti
FROM STOK_HAREKETLERI t
ZAGOR TENAY TÜRK'tür... TÜRK kalacak...
Zoru başarırım, İmkansız zaman alır
FreeMan 35.5
Soru sormaya üşenmiyorsan, sorunun çözümünü yazmaya da üşenme !!!
Zoru başarırım, İmkansız zaman alır
FreeMan 35.5
Soru sormaya üşenmiyorsan, sorunun çözümünü yazmaya da üşenme !!!
-
- Üye
- Mesajlar: 30
- Kayıt: 08 Oca 2025 10:35
Re: Edit1 ve Edit2'ye göre filtre yapmak.
Teşekkür ederim hocam Allah razı olsunfreeman35 yazdı: 24 Şub 2025 03:59 Forumu kurma amacımız zaten soru sorulması
sql, code vs için tag kullanırsan daha okunaklı olacak.
Ben olsam ADOQuery_Garanti yerine Q_Garanti yada qry_Garanti şeklinde standart bir kısaltmaya giderdim.
Yazdığını sql server a yıkmaya alıştır, önceliğini sql e vermen, hem sorunları kolaylaştırırsın hemde sql öğrenmeyi hızlandırırsın.
string ifadelerin '' (boşluk) yada space ile olma ihtimalini denetlemelisin. yani null ile '' farklı iki değerdir.
fikir versin, buna where ekleyerek gereksiz kayıtları azaltarak performans sağlarsın. parametreler ile de istediğin değerleri sorgularsınKod: Tümünü seç
SELECT t.sth_tarih, (CASE WHEN DATEDIFF(day, CAST(GETDATE() AS DATE), CAST(t.sth_tarih AS DATE) )>8 THEN 'GARANTİSİ DEVAM EDİYOR' ELSE 'Garinti dışı' END) as Garanti FROM STOK_HAREKETLERI t