![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 15.10.2008
Сообщений: 10
|
![]()
Подскажите мне пожалусто как можно фильтровать таблицу по нескольким полям одновременно.
Т.Е. фильтрация у меня происходит в обычном Table, по событию OnChenge любого на форме Edit`a. Например: Набираю в поле Name Имя клиента, он мне отфильтровал всё по имени, после набираю в поле Naimenovanie наименование товара, он мне должет отфильтровать из набора прошлой выборки уже по названию товара. Каким образом такое реализовать? Через обычный Table или через Query? Буду признателен!!! ![]() |
![]() |
![]() |
![]() |
#2 |
*
Старожил
Регистрация: 22.11.2006
Сообщений: 9,201
|
![]()
Составной фильтр для TTable - обычная строка, например:
'field1='+QuotedStr(Edit1.Text)+' and field2='+QuotedStr(Edit2.Text) |
![]() |
![]() |
![]() |
#3 |
Пользователь
Регистрация: 15.10.2008
Сообщений: 10
|
![]()
вот это вот
'field1='+QuotedStr(Edit1.Text)+' and field2='+QuotedStr(Edit2.Text) должно содержатся в каждой процедуре OnChange всех Edit`ов? И что это за функция QuotedStr, что она делает? Переводчик переводит коряво, смысла в переводе я ненашёл. Раньше я в каждом OnChange просто накапливал в одну переменную текст этих полей, и потом фильтровал по этой переменной. Но это соответственно неработало правельно. |
![]() |
![]() |
![]() |
#4 |
*
Старожил
Регистрация: 22.11.2006
Сообщений: 9,201
|
![]()
Делаете ОДИН обработчик для Edit1, а остальным назначаете его же...
QuotedStr заключает выражение в кавычки (вдруг у вас в эдите больше одного слова?) |
![]() |
![]() |
![]() |
#5 |
Пользователь
Регистрация: 15.10.2008
Сообщений: 10
|
![]()
Дело в том что когда я ввожу в первый Edit, у меня вообще ничего непоказывает т.к. фильтр идёт по двуп полям, через 'and', а второе поле пустое.
Например: Если в первом поле написал букву "с", Грид становится пустым, как только во втором поле напишу какую нить букву, результат появляется! |
![]() |
![]() |
![]() |
#6 |
*
Старожил
Регистрация: 22.11.2006
Сообщений: 9,201
|
![]()
А проверку эдитов на пустоту я должен делать?
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Отбор по двум полям | MPa | БД в Delphi | 4 | 06.02.2008 20:14 |
Фильтрация по двум полям | Dunkas | БД в Delphi | 11 | 21.01.2008 23:59 |
Уникальность по 3 полям | num8er | БД в Delphi | 3 | 09.10.2007 09:54 |
Фильтрация по нескольким полям! | Askat | БД в Delphi | 1 | 14.06.2007 06:44 |