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

Вниз

Быстрый поиск по первым символам   Найти похожие ветки 

 
Alexey Leonchik   (2004-06-30 03:42) [0]

Подскажите пожалуйста...

Как организовать быстрый поиск по первым введенным символам  по базе данных товара. Есть просто поле ввода, куда будут вводиться символы, а в гриде курсор устанавливается на ближайшую запись. Может ссылку на пример...

С уважением Алексей Леончик


 
Наталия ©   (2004-06-30 06:10) [1]

Locate


 
Alexey Leonchik   (2004-06-30 07:13) [2]

Наталия! Спасибо за Locate - все работает просто замечательно :)))

С уважением Алексей Леончик


 
Alexey Leonchik   (2004-06-30 07:48) [3]

P.S. А не подскажет ли кто, что нужно сделать, чтобы найденная строка была выделена вся, когда просто перемещаемся по данным она вся выделена, а когда произвели поиск по Locate - устанавливается указатель на запись (маленький такой треугольничик слева) а строка не выделяется :(

С уважением Алексей Леончик


 
Соловьев ©   (2004-06-30 09:50) [4]

DBGrid.Setfocus; ?


 
Курдль ©   (2004-06-30 09:59) [5]

А если записей, у которых совпадают первые символы в каком-то поле, окажется несколько? Юзер так и не увидит более одной найденной? Мне кажется, что здесь уместнее фильтрация, а не поиск.
(Filtered + OnFilterRecord)


 
Anatoly Podgoretsky ©   (2004-06-30 10:02) [6]

И заодно можно не только по первым символам.
Фильтрация или SQL запросом или OnFilterRecord для данного случая


 
Курдль ©   (2004-06-30 10:10) [7]

Кстати, функцию поиска "по первым символам" и "продолжения поиска" осилит и продвинутый грид типа dxDBGrid (наверное и DBGridEh). А вот фильтр по любому фрагменту поля, как верно заметил Anatoly Podgoretsky ©   (30.06.04 10:02) [6], приходится делать самому.


 
Anatoly Podgoretsky ©   (2004-06-30 10:19) [8]

И можно сделать красиво, без поля ввода, по текущему полю, с задержкой по таймеру и возможным ограничением на минимальное количество символов. Очень удобно и интуитивно понятно.


 
Курдль ©   (2004-06-30 10:22) [9]

Да, еще в тему :)  Если ищешь юр. лица по "первым символам", есть опасность нарваться на 1 000 000 записей с первыми символами "Общество с ограниченной ответственностью", а остальные - "Открытое акционерное общество". Вот и пиши все эти "перыве символы"! :)


 
Anatoly Podgoretsky ©   (2004-06-30 10:37) [10]

Курдль ©   (30.06.04 10:22) [9]
Такой опасности нет, такая опасность существует только при фильтрации, при поиске у него уже набор с этим и с другим тоже.


 
Mim1 ©   (2004-06-30 10:37) [11]

[9] Курдль ©   (30.06.04 10:22)
Думается что имя юрлица это другое. А это его аттрибут.


 
Наталия ©   (2004-06-30 12:49) [12]

"Фантазеры" Н.Носов  :)))


 
Курдль ©   (2004-06-30 14:25) [13]

Для кого - фантазеры. А для кого-то мимоходом прописали часть пользовательского интерфейса, с указанием возможных препятствий.
Все зависит от того, кто зачем сюда зашел :)


 
DSKalugin ©   (2004-06-30 16:51) [14]

procedure TfmECatalog.edFindChange(Sender: TObject);
begin
 if edFind.Text<>"" then begin
   if not tb_catalog.Locate("Detail_number",edFind.Text,[loPartialKey])
   then Beep
 end
 else tb_catalog.First;
end;


 
Alexey Leonchik   (2004-07-01 06:51) [15]

Большое всем СПАСИБО за ответы :)
Не ожидал, что будет такой отклик...

С уважением Алексей Леончик



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

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

Наверх




Память: 0.5 MB
Время: 0.04 c
4-1086870441
Лёха
2004-06-10 16:27
2004.07.25
RegNotifyChangeKeyValue, отслеживание реестра


14-1088927233
Masloff
2004-07-04 11:47
2004.07.25
Где взять драйвера под Motorola c650?


1-1089640774
Горыныч
2004-07-12 17:59
2004.07.25
Как получить тотальный контроль над консольным приложением


1-1089324398
Zvr@b
2004-07-09 02:06
2004.07.25
Как такое может быть!.... цикл до 3 а выполняется 10 раз!


3-1088577412
zorik
2004-06-30 10:36
2004.07.25
Нужно написать запрос