Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2006.12.03;
Скачать: [xml.tar.bz2];

Вниз

Продолжение поиска Locate   Найти похожие ветки 

 
vodvorezlaya ©   (2006-09-29 10:26) [0]

Всем доброго дня.

Пользуюсь поиском Locate;

В столбце есть повторяющиеся значения.
Locate находит первое значение в столбце, как сделать поиск всех последующих значений?

Спасибо.


 
Johnmen ©   (2006-09-29 10:38) [1]

Самому пройти по НД с анализом на соответствие записи нужному критерию...


 
ЮЮ ©   (2006-09-29 10:45) [2]

Отсортировать по этому столбцу. Тогда хватит одного Locate


 
ЮЮ ©   (2006-09-29 10:47) [3]

Или отфильтровать. Или сделать выборку. Скакать по куче записей в поиске нужной - не самое лучшее решение, ИМХО


 
vodvorezlaya ©   (2006-09-29 10:47) [4]


> Самому пройти по НД с анализом на соответствие записи нужному
> критерию...

А нет способа полегче, т.к. твой метод конечно выход, но он ресурсоёмкий.

Впрочем, к первой записи можно пройти по Locate, а дальше уже вручную
while not Eof;

Хотя, если строка найдена, то можно через Filter отобразить в DataSet поля если повторяющиеся имеются.


 
vodvorezlaya ©   (2006-09-29 10:50) [5]


> Отсортировать по этому столбцу. Тогда хватит одного Locate

Отличная идея. Вери сенькс.


 
Desdechado ©   (2006-09-29 11:19) [6]

>> Самому пройти по НД с анализом на соответствие записи нужному  критерию...
> А нет способа полегче, т.к. твой метод конечно выход, но он ресурсоёмкий.
И чем он ресурсоемкий? 3-мя строчками кода?

> Впрочем, к первой записи можно пройти по Locate, а дальше уже вручную
Locate тоже делает перебор, так что это ничем не легче.

> Отсортировать по этому столбцу. Тогда хватит одного Locate
Это не всегда выход. Например, выборка должна быть показана с конкретной сортировкой, а искать совсем по произвольному полю.


 
evvcom ©   (2006-09-29 11:29) [7]

DevExpress-овский грид сделает это за тебя сам, но он платный. Достаточно набрать нужный образец для поиска в столбце, он спозиционируется на первую найденную, далее Ctrl+Enter поиск вниз, Shift+Enter поиск вверх.


 
MsGuns ©   (2006-09-29 11:39) [8]

Если поле активного индекса, то есть методы FindKey.. (вроде так, точно не помню), ищущие вперед, назад, первый, последний.
Вообще же для нормально удобного интерфейса поиск должен быть универсальным, т.е. многорежимным.
Он должен обеспечивать как минимум след.режимы:
1. Контекстный поиск в колонке. По изменению текста в некотором контроле (TEdit) выполняется немедленный поиск Locate(..,..,[loPatrialKey]) первой похожей записи. Должен предусматривать включение/отключение регистрочувствительности
2. Поиск по маске. Готовится маска (маски, если поиск по неск.колонкам обновременно) в TEdit и по кнопке запросом или сканированием ищется первая запись, удовлетворяющая маске. Должен предусматривать включение/отключение регистрочувствительности и частичного совпадения (LIKE)
3. Поиск в список. В отдельной формочке (панельке) отбражаются ВСЕ найденные по условиям (маскам) записи. По клику на списке поиск и активация этой записи в основной сетке. При этом список также должен быть виден (панель, модально открытая формочка или формочка fsStayOnTop)


 
Desdechado ©   (2006-09-29 12:22) [9]

> Он должен обеспечивать как минимум след.режимы
Ты прямо как на лекции. Долженствование тут не приемлемо. Тем более долженствование интерфейсных решений, предложенных тобой.
На вкус и цвет, как говорится...
Поэтому, только совет и не более :)



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

Форум: "Базы";
Текущий архив: 2006.12.03;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.057 c
2-1163257058
Толик
2006-11-11 17:57
2006.12.03
учебник по DELPHI


15-1163075753
Сало
2006-11-09 15:35
2006.12.03
Вышел релиз Firebird 2.0


15-1162912545
jakon80
2006-11-07 18:15
2006.12.03
Delphi:Помогите сделать программу новичку!!!


2-1163774426
asg.aleks
2006-11-17 17:40
2006.12.03
редактирование bdf файла из формы


15-1163148071
vidiv
2006-11-10 11:41
2006.12.03
Проблема с авторизацие в цепочке ISA серверов





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский