Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.10.07;
Скачать: CL | DM;

Вниз

Поиск в Delphi   Найти похожие ветки 

 
Mariya   (2007-09-10 15:34) [0]

Подскажите пожалуйста, как осуществить поиск по двум и более полям.
У меня, например,  Edit1-фамилия, Edit2-имя, так вот, я прописала фильтр, на каждый по отдельно сти, работает, реагирует на каждую нажатую следующую букву. А - выходят все фамилии на А, Аб-все начинающиеся на Аб и т.д. имя таакже, мне нужно, чтобы когда я начинала искать по имени, найденные фамилии оставались, и поиск шел уже среди этих фамилии, а у меня отдельно, фамилия игнорируется, ищет имя из все базы. Код прописан в самих едитах, на он клике. куда мне нужно писать и что? Заранее спасибо!


 
clickmaker ©   (2007-09-10 15:38) [1]

DataSet.Lookup?
Хотя для фильтра можно просто объединять
Filter := "FirstName=""A*"" and LastName=""B*""";


 
Mariya   (2007-09-10 15:48) [2]

Спасибо огромное за ответ, но посмотри пожалуйста, вот мой фильтр, в Едит1 начинаешь вводить фамилию он ищет (на имя такой же код), вот здесь как мне дописать, чтобы найденная фамилия осталась, и при вводе в Едит2 фамилии, он ее искал, не могу сама понять. Также заранее спасибо.
if trim(Edit1.Text)<>""  then
  begin
     tbmain.Filtered:=false;
     tbmain.Filter:="Фамилия="+QuotedStr(Edit1.Text+"*");
     tbmain.Filtered:=true;
  end
  else
  tbmain.Filtered:=false;

if trim(Edit2.Text)<>""  then
  begin
     tbmain.Filtered:=false;
     tbmain.Filter:="Имя="+QuotedStr(Edit2.Text+"*");
     tbmain.Filtered:=true;
  end
  else
  tbmain.Filtered:=false;


 
clickmaker ©   (2007-09-10 15:50) [3]

var
 strFilter: string;

strFilter := "";

if Trim(edit1.Text) <> "" then
  strFilter := "Фамилия="+QuotedStr(Edit1.Text+"*");

if Trim(edit2.Text) <> "" then
  if (strFilter <> "") then strFilter := strFilter + " and ";

tbmain.Filter:= strFilter;


 
Mariya   (2007-09-10 16:21) [4]

Подскажи пожалуйста, а как добавить 3 поле, например отчество? Я не поняла              +"and" ?


 
Германн ©   (2007-09-10 16:24) [5]


> Я не поняла              +"and"

if (strFilter <> "") then strFilter := strFilter + " and "+"Имя="+QuotedStr(Edit2.Text+"*");
Неужели трудно самой понять?


 
Mariya   (2007-09-10 16:31) [6]

Спасибо большое!


 
Anatoly Podgoretsky ©   (2007-09-10 16:34) [7]

> Mariya  (10.09.2007 16:21:04)  [4]

ОНО



Страницы: 1 вся ветка

Текущий архив: 2007.10.07;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.015 c
15-1189175731
Верующий
2007-09-07 18:35
2007.10.07
Что будет без ИНН?


2-1189513887
Mariya
2007-09-11 16:31
2007.10.07
Напоминание в Delphi


10-1137243244
Alex17
2006-01-14 15:54
2007.10.07
Как это выгледит в Дельфи


9-1160475693
grouzd)ev
2006-10-10 14:21
2007.10.07
Конкурсы по кодингу игр


2-1188553610
MAXHo
2007-08-31 13:46
2007.10.07
Как добавить запись в конец таблицы?