Быстрый отбор по первой букве в любом списке

Публикация № 1326355

Разработка - Практика программирования

Универсальное расширение, позволяющее моментально включить отбор в любом динамическом списке по первой букве наименования.

Идея в общем не нова. Подобные разработки встречались еще в конфигурациях на платформе 7.7. В данной публикации я сделал попытку реализовать общее для всех конфигураций решение.

 

Назначение

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

 

Подключение

Расширение подключается типовым методом. В режиме предприятия заходим Все функции // Стандартные // Управление расширениями конфигурации // Добавить расширение. Безопасный режим должен быть отключен для полноценного функционирования.

После перезапуска сеанса расширение готово к работе. Во всех формах списков появится панель для быстрого отбора записей по первой букве наименования.

 

Порядок работы

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

Возможна настройка функционала расширения.

Панель с буквами можно разместить как сверху формы, так и снизу, а также непосредственно над динамическим списком. Следует иметь в виду, что некоторые формы не позволят разместить панель в произвольном месте, поэтому нормальным является нижнее расположение панели.

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

 

Ограничения

Ваша конфигурация должна базироваться на Библиотеке стандартных подсистем.

Форма списка должна быть подключена к механизму БСП "Подключаемые команды". Если у вас типовая конфигурация, то в подавляющем большинстве случаев самые распространенные формы (такие как Контрагенты, Сотрудники, Номенклатура) уже подключены.

В форме должен быть размещен динамический список с выбранной основной таблицей, и он должен иметь имя "Список". 

Данные, отображаемые в списке, должны иметь наименование. Под это условие подпадает большинство справочников, планы счетов, планы видов характеристик и видов расчета.

В списках, имеющих иерархию элементов, отбор будет работать лишь частично - из-за того, что верхний элемент не попадает в отбор, не будут отображаться элементы нижнего уровня. Для обхода этого ограничения следует выбрать режим отображения Список.

Только кириллица, латиницы и спецсимволов нет. Глаголицы и рун кстати тоже нет ))

 

Известные проблемы

В зависимости от номера релиза основной конфигурации может возникнуть ошибка совместимости. Данная проблема решается в конфигураторе - режим совместимости либо повышается, либо понижается. Данное расширение имеет режим совместимости 8.3.12.

В зависимости от типа конфигурации может возникнуть ошибка с основным языком. Также решается в конфигураторе (см. видео)

 
 Исправление ошибки с языком

 

Работа проверена на платформе 1С:Предприятие 8.3.15-8.3.18 в конфигурациях: ERP 2.5, ЗУП 3.1, ЗГУ 3.1, УТ 11.4, БП 3.0, БГУ 2.0, Розница 2.3, УНФ 1.6. Работать будет в большинстве современных типовых конфигураций. Если будут вопросы по работоспособности в конкретном релизе, задавайте вопросы в комментах с указанием номера релиза и платформы, постараюсь проверить.

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

Скачать файлы

Наименование Файл Версия Размер
Расширение

.cfe 16,71Kb
4
.cfe 1.7 16,71Kb 4 Скачать

Специальные предложения

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. artbear 1209 01.12.20 12:30 Сейчас в теме
(0) И в чем фишка\польза подобного отбора только по первой букве имени?

лично я пока не понимаю смысла именно такого минимального отбора
2. the1 802 01.12.20 12:55 Сейчас в теме
(1) Фишка в том, что пользователю не нужно тянуться к клавиатуре. А по моей практике пользователи предпочитают мышь при работе, и задействуют ее до последней возможности.
4. artbear 1209 01.12.20 13:00 Сейчас в теме
(2) ты же понимаешь, что этой информации не хватает в описании и описание лучше обновить.

Про работу с мышкой - да, для многих пользователей мышь главнее )
6. the1 802 01.12.20 13:03 Сейчас в теме
(4) Кстати, да, но эта мысль мне пришла только в ходе нашего обсуждения. При оформлении публикации она сидела подспудно где-то глубоко) Спасибо за наводку, Артур, воспользуюсь советом.
3. the1 802 01.12.20 12:58 Сейчас в теме
(1) Кстати, судя по скачиваниям, не только лишь все уловили фишку))
5. user1464234 01.12.20 13:02 Сейчас в теме
Очень круто, особенно для веб клиентов на мобилках.
7. the1 802 01.12.20 13:04 Сейчас в теме
8. artbear 1209 01.12.20 13:05 Сейчас в теме
(7) Да, для веб-клиентов на мобильных (планшеты и т.п.) может быть удобно.
9. supervolt 06.12.20 19:48 Сейчас в теме
УТ 11.4.6.188 - При нажатии на любую букву выдает ошибку: Нельзя сравнивать поля неограниченной длины и поля несовместимых типов... Как быть?
10. the1 802 07.12.20 08:36 Сейчас в теме
(9) Можете заскринить ошибку?
12. supervolt 07.12.20 12:34 Сейчас в теме
11. the1 802 07.12.20 08:41 Сейчас в теме
(9) И еще вопрос - Безопасный режим отключен?
16. the1 802 07.12.20 14:19 Сейчас в теме
Это форма выбора? И еще один скрин попрошу
Прикрепленные файлы:
17. supervolt 07.12.20 15:13 Сейчас в теме
18. supervolt 08.12.20 11:36 Сейчас в теме
Извините, так как нам исправить ошибку?
19. the1 802 08.12.20 11:38 Сейчас в теме
(18) Потестил на похожем окружении, но ошибка не воспроизводится. Могу по удалёнке к вам подключиться и проверить. Нужен доступ к конфигуратору.
20. the1 802 09.12.20 08:57 Сейчас в теме
Коллеги, исправлена небольшая ошибка. Кто скачивал, отпишитесь, вышлю исправления.
Оставьте свое сообщение

См. также

Публикаций не найдено

Попробуйте расширить область поиска, проверьте поисковый запрос и повторите попытку.

Или закажите индивидуальную разработку вашего решения.

Создать заказ на разработку