Arkadaşlar arama yaptırıyorum.Eğer kayıt yoksa bazı işlemleri yapmamasını istiyorum.Buraya kadar herşey tamam .Şöyle bir problemim var.Kayıt yoksa Messagedlg ile gelen mesajda okeye mouse ile tıklandığında istediğim işlem gerçekleşiyor.Gelen mesaja enter tuşu ile okey dediğimde yapmak istediğim işlem gerçekleşmiyor.Ayrıca aramayı yaptırırken aslında locate metodunu kullanıyorum.Adoquery'nin locate metodu ile işlemi yapıyorum.Çünkü kayıt filtrelenmeden kayıta konumlanmam gerekiyor.Sadece kayıtın bulunup bulunmadığını aşağıdaki kodla kontrol ettriyorum.Bunu yapmamın nedenide locatede lopartialkey'in aktif olmasıdır.Yani kaydın ilk harfini vs. girerse kullanıcının sonuca erişmesi gerekiyor.
adoquery5.SQL.Clear;
adoquery5.Close;
adoquery5.SQL.Add('select * from allproducts where ntno LIKE'+QuotedStr('%'+xpEdit1.Text+'%'));
adoquery5.Open;
if (adoquery5.recordcount=0) then
begin
acilis:=1;
image2.Visible:=true;
xpedit4.Text:='';
xpedit5.Text:='';
xpedit6.Text:='';
memo1.Clear;
Messagedlg('Search query record not found',mtwarning,[mbok],0);
end;
Bilginin efendisi olmak için çalışmanın uşağı olmak şarttır...
BALZAC
Bana bir harf öğretenin kulu kölesi olurum..
HZ.ALİ
Ben problemi giderdim.Problemin nedeni kayıt bulunduktan sonra dbgrid'e set etmem (dbgrid1.setfocus) oluyormuş.Adoquery'nin afterscroll olayıda tabiki buna sebep olmakta.Bende dbgrid yerine başka nesneye set ettim..
Bilginin efendisi olmak için çalışmanın uşağı olmak şarttır...
BALZAC
Bana bir harf öğretenin kulu kölesi olurum..
HZ.ALİ