function SQLDateFmt( aDate: TDate ): string;
begin
Result := QuotedSTR( FormatDateTime('dd-mm-yyyy', aDate) );
end;
procedure TForm1.Button1Click(Sender: TObject);
VAR
SQL : string;
begin
SQL := '';
if checkbox1.Checked=true then SQL := '[bitistarihi]>='+SQLDateFmt(datetimepicker1.Date) else SQL := SQL + ' AND '+ '[bitistarihi]=' +SQLDateFmt(datetimepicker1.Date) ;
if checkbox2.Checked=true then SQL:= '[bitistarihi]<=' +SQLDateFmt(datetimepicker2.Date); //else SQL := SQL + ' AND '+ '[CIKIS_TARIHI]=' + SQLDateFmt(Datetimepicker2.Date) ;
if trim(CXLOOKUpcombobox1.Text) <> '' then if SQL = '' then SQL := '[ürünkodu]=' + QuotedStr(CXLOOKUpcombobox1.Text) else SQL := SQL + ' AND '+ '[ürünkodu]=' + QuotedStr(CXLOOKUpcombobox1.Text) ;
if trim(CXLOOKUpcombobox2.Text) <> '' then if SQL = '' then SQL := '[ürünadi]=' + QuotedStr(CXLOOKUpcombobox2.Text) else SQL := SQL + ' AND '+ '[ürünadi]=' + QuotedStr(CXLOOKUpcombobox2.Text) ;
Adoquery2.Filtered :=False;
Adoquery2.Filter := SQL;
Adoquery2.Filtered :=True;
Arkadaşlar yukarda paylaşmış olduğum kod ile filtreleme yapıyorum 2 adet checkbox kullandım işaretli olduklarında filtreleme olayına tarihlerde dahil oluyor. şimdi buradaki sorunum şu checkboxlar işaretli iken her türlü filtreleme yapılıyor sorun çıkmıyor ancak checkboxlar işaretli değilken butona bastığım anda 'Yanlış türdeki değişkenler kabul edilebilir aralık dışında veya bir başkasıyla çakışan bağımsız değişkenler kullanılıyor.' hatasını alıyorum bu neden olabilir acaba yardımlarınız beklyorum cevaplarınız için şimdiden teşekkür ediyorum.
Eğer filtreleme yapmayacak iseniz Filtered := False kalması gerekir. Diğer bir deyişle, SQL = EmptyStr ise Filtered = False kalmalı.
Kontrollerinizi buna göre yapınca sorun düzelmesi gerekir.
Cevabınız için teşekkür ederim ama acemi olduğum için çok bir şey bilmiyorum şimdi checkbox işaretlendiğinde filtreye tarih de dahil olacak ama checkbox işaretlenmediğinde tarih filtreye dahil olmayacak ama ürün adı ve ürün kodu cxlookupcomboboxları filtreleme işlemine devam edecek işte burada sorun çıkıyor ürün kodu yada adını seçtiğimde butona basınca yukarıdaki hatayı alıyorum.(Not:Filtreleme işlemi aynı tablo içinde farklı alanlarda yapılıyor.)