table1.filter ile hem no hemde tarhe göre arama olurmu?
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
table1.filter ile hem no hemde tarhe göre arama olurmu?
table3.Filter:='TC_KMLK='+quotedstr(edit1.Text);
table3.Filtered:=true;
bu benim kimlik numarasına göre aramam bunun altına şöyle bişi ekledim
table3.Filter:='TC_KMLK='+quotedstr(edit1.Text);
Table3.filter:='GET_TAR=' // ayrıca bu tarih alanı boş olanları bulmak istiyorum
table3.Filtered:=true;
teşekkürler şimdiden
table3.Filtered:=true;
bu benim kimlik numarasına göre aramam bunun altına şöyle bişi ekledim
table3.Filter:='TC_KMLK='+quotedstr(edit1.Text);
Table3.filter:='GET_TAR=' // ayrıca bu tarih alanı boş olanları bulmak istiyorum
table3.Filtered:=true;
teşekkürler şimdiden
Kod: Tümünü seç
Table1.Filter:='GET_TAR='+QuotedStr(DateToStr(DateTimePicker1.Date))+' and TC_KMLK='+QuotedStr(Edit1.Text);
Kod: Tümünü seç
Table1.Filter:='GET_TAR='+QuotedStr('')+' and TC_KMLK='+QuotedStr(Edit1.Text);
Slm.Boş Tarih alanları bu Kodlada bulabilirsin!
Kod: Tümünü seç
Table1.Filtered:=false;
Table1.Filter:='GET_TAR is not null';
Table1.Filtered:=true;
Kodlarımı açıklayayımSenin tam işine yarayacak kod;bu kodlar sayesinde eğer girilen no tabloda varsa; o kayıtta duracak, yani edit, delete vs işlemleri yapabileceksin; yoksa hata verecek.
Tablo boşsa hiç bi şey yapmayacak.
Kendin filtrele diyerek Table.Filter'ı kullanmadan if ve while ile filtreleme yapmanı tavsiye etmiştim.
Kod: Tümünü seç
Table3.First;//ilk kayıda git
While Table3.eof=False Do//Tablonun sonu gelene kadar tekrarla
Begin
if (Table3TC_KMLK.AsString=edit1.text) And (Table3GET_TAR.AsString='')
Then Memo1.lines.Add(Table3TC_KMLK.AsString);
//Eğer Kimlik no edit1'deki değerse ve tarih boşsa, kimlik numarasını Memo'ya at.
Table3.Next;//sonraki kayıt
end;
Kod: Tümünü seç
var
dur:boolean;
begin
Table3.First;
dur:=False;
if table3.eof Then dur:=True;//Tablo boşsa
While (dur=False) Do
begin
if (Table3TC_KMLK.AsString=edit1.text) And (Table3GET_TAR.AsString='') Then dur:=True;//Kayıt bulunduysa ve tarih boşsa aramayı durdur
if dur=False Then Table1.Next;//durmayacaksan ilerle :)
if Table3.Eof=True Then//Son kayıda gelindiyse
begin
ShowMessage('Kayıt Bulunamadı');//hata ver
dur:=True;//gitme :)
end;
end;
end;
Tablo boşsa hiç bi şey yapmayacak.
Kendin filtrele diyerek Table.Filter'ı kullanmadan if ve while ile filtreleme yapmanı tavsiye etmiştim.
En son ulu coder tarafından 28 Nis 2006 09:03 tarihinde düzenlendi, toplamda 2 kere düzenlendi.
böyle bişi denedim amabegin
Table3.First;
While Table1.eof=False Do
BEgin
if (Table3TC_KMLK.AsString=edit1.text) And (Table3GET_TAR.AsString='') Then
BEGIN
table3.Filter:='TC_KMLK='+quotedstr(edit1.Text);
table3.Filtered:=true;
program hiç çalışmıyor boyle yapınca galiba anlamadım senin dediğini ulu coder arkadaşım
Ya iyide benim verdiğim kodlar program içinde kullanılacak, tasarım halinde table'ı aktifleştirdiğinde hata vermemesi lazımAliErdem yazdı:ulu coder dediğin gibi yatım table ları active=true yapıp çalışrınca bu hatayı gösteriyor

Kodları silip aktifleştirmeyi dene bi. Yine hata verecek ve bu kodlardan kaynaklanmadığı ispatlanacak

En son ulu coder tarafından 29 Nis 2006 12:26 tarihinde düzenlendi, toplamda 1 kere düzenlendi.
Daha önce verdiğim kod hem TC_Kimlik No'suna göre verir(Filitreler) hem de Tarih Sütunundaki boş alanları listeler.
Bu kod işini görmesi lazım.
Bu kod işini görmesi lazım.
Kod: Tümünü seç
Table1.FilterOptions:=[FoCaseInsensitive];//harf duyarlılığı yok
Table1.Filter:='GET_TAR is not null';//İndexli alan
Table1.Filtered:=true;