Последняя версия DataExpress 3 beta от 31 марта 2019 года. Изображение Скачать
См. также: Энциклопедия DX | Форум на develop-soft | Песочница

Поиск по всем полям во всех формах

Расширение функционала и существующих возможностей программы с помощью модулей расширений и плагинов от сторонних разработчиков.

Модератор: Разработчики расширений

kok80
Интересующийся
Сообщения: 204
Зарегистрирован: Пн июл 02, 2018 9:45 pm
Поблагодарили: 4 раза

Поиск по всем полям во всех формах

Сообщение kok80 » Вс дек 23, 2018 11:41 pm

Изображение

Возможности:

1) фильтр по всем полям (добавлена поддержка TdxFile)
2) значения фильтра формы учитываются
3) очистить поле поиска можно по нажатию ESC, если фокус на поле
4) поиск только по видимым столбцам
5) значение поиска сохраняется для каждой формы и восстанавливается при переходе на нее с другой формы
6) нажатие правой кнопкой мышки на "X" - единоразовый поиск без учета фильтра формы
7) можно настроить задержку поиска после ввода (актуально при больших объемах информации или медленном соединении с базой)
8) возможность назначения для одной формы префикса, который будет всегда добавляться перед строкой поиска
9) кнопка вниз на поле поиска - переход на grid формы, кнопка вверх на grid формы при выделенной первой строке - переход в поле поиска
10) нажатие Ctrl+F в grid формы передает фокус ввода в окно поиска
11) на простой форме: значения поиска записывается в переменную kok80.QueryFilter (название переменной можно задать в настройках), форма обновляется.
Пример использования в фильтре запроса на простой форме: [?!адрес]==GetVar("kok80.QueryFilter")

Установка:
после импорта модуля выполнить: дизайнер - действия при запуске - вставить действие - поиск

Известные ошибки/недоработки:
- в дереве при выборе неверхней node отображает пустой результат поиска
ps здесь всегда ссылка на последнюю версию:

kok80-poisk1.63.zip [ Изображение Скачать ]

................................
dxdb_icon Демо онлайн
dxdb_icon Демо онлайн 2


Замечания, предложения ?

...

drts
Опытный
Сообщения: 291
Зарегистрирован: Сб окт 29, 2016 11:35 pm
Откуда: Новороссийск
Благодарил (а): 1 раз

Re: Поиск по всем полям во всех формах

Сообщение drts » Пн дек 24, 2018 10:52 am

Вроде все работает нормально. Поменяйте только ID расширения, а то оно совпадает с уже существующим drts-поиск.

kok80
Интересующийся
Сообщения: 204
Зарегистрирован: Пн июл 02, 2018 9:45 pm
Поблагодарили: 4 раза

Re: Поиск по всем полям во всех формах

Сообщение kok80 » Пн дек 24, 2018 12:07 pm

опс, исправил. Может мультипоиск сделать:с И, ИЛИ ?
Вложения
kok80-poisk.zip
(3.58 КБ) 14 скачиваний

kok80
Интересующийся
Сообщения: 204
Зарегистрирован: Пн июл 02, 2018 9:45 pm
Поблагодарили: 4 раза

Re: Поиск по всем полям во всех формах

Сообщение kok80 » Пн дек 24, 2018 10:41 pm

-убрал ошибку с символом кавычек "
-убрал ошибку с длинным текстом для поиска
в обоих случаях очищает поле поиска и выводит в нем подсказку.
- кнопку очистки поменял (так вроде симпатичней), скрывается при пустом поле.
Вложения
kok80-poisk.zip
(3.79 КБ) 42 скачивания

kok80
Интересующийся
Сообщения: 204
Зарегистрирован: Пн июл 02, 2018 9:45 pm
Поблагодарили: 4 раза

Re: Поиск по всем полям во всех формах

Сообщение kok80 » Вт янв 29, 2019 12:32 am

Тестовый вариант, для ознакомления и поиска ошибок. Предостерегаю от использования в рабочих базах!

После первого ввода в строку поиска любого символа на всех формах ищутся объекты (TdxLookupComboBox) и для них создаются обработчики создания окна списка объекта. При нажатии на кнопку выбора объекта в окне выбора создается строка поиска, но поиск производится без учета фильтра! Таким образом, все предустановленные фильтры игнорируются и пользователь может выбрать любое значение из формы, что может привести к печальным последствиям.

p.s. В планах прикрутить к поиску фильтр.
Вложения
kok80-poisk-2.0a.zip
(4.66 КБ) 12 скачиваний

drts
Опытный
Сообщения: 291
Зарегистрирован: Сб окт 29, 2016 11:35 pm
Откуда: Новороссийск
Благодарил (а): 1 раз

Re: Поиск по всем полям во всех формах

Сообщение drts » Ср янв 30, 2019 8:16 am

drts писал(а):Вроде все работает нормально. Поменяйте только ID расширения, а то оно совпадает с уже существующим drts-поиск.

kok80
Интересующийся
Сообщения: 204
Зарегистрирован: Пн июл 02, 2018 9:45 pm
Поблагодарили: 4 раза

Re: Поиск по всем полям во всех формах

Сообщение kok80 » Вс фев 10, 2019 12:24 am

Теперь фильтр формы учитывается при поиске.
Также исправил: при вводе строки начинавшейся символов с ()} выскакивала ошибка.
При нажатии на заголовок столбца результаты поиска сбрасываются - осталось это победить.
Вложения
kok80-poisk1.1.zip
(8.03 КБ) 11 скачиваний

kok80
Интересующийся
Сообщения: 204
Зарегистрирован: Пн июл 02, 2018 9:45 pm
Поблагодарили: 4 раза

Re: Поиск по всем полям во всех формах

Сообщение kok80 » Вс фев 10, 2019 6:26 pm

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

drts
Опытный
Сообщения: 291
Зарегистрирован: Сб окт 29, 2016 11:35 pm
Откуда: Новороссийск
Благодарил (а): 1 раз

Re: Поиск по всем полям во всех формах

Сообщение drts » Пн фев 11, 2019 8:59 am

Что-то работает не так. А именно: не закоментированы дебуги. При переходе на другую вкладку поле поиска не очищается, в нем сохраняется текст предыдущего запроса, но на поиск в новой вкладке это начинает влиять после начала ввода теста в поле (что естественно). Предыдущая версия (без учета фильтрации) работала нормально. А так всё красиво.

kok80
Интересующийся
Сообщения: 204
Зарегистрирован: Пн июл 02, 2018 9:45 pm
Поблагодарили: 4 раза

Re: Поиск по всем полям во всех формах

Сообщение kok80 » Пн фев 11, 2019 10:44 am

так и было задумано, но исправил. При смене вкладки восстанавливается строка поиска, даже если она была пустая.

P.S. 15/02/19 выложил исправленную версию: возникала ошибка, если уставновлен фильтр, но не задано ни одного значения, как в тестовой базе
Вложения
kok80-poisk1.2.zip
(8.74 КБ) 13 скачиваний


Вернуться в «Расширения и плагины»