При переходе на интерфейс «Такси» многие пользователи и разработчики столкнулись с изменением логики выбора ссылочных данных (справочников, документов). Вместо привычного открытия формы списка система предлагает выпадающее меню с историей последних выбранных значений и кнопками «Показать все» и «(создать)». Рассмотрим подробнее, как работает этот механизм и какими способами можно изменить это поведение, чтобы сделать работу в программе более эффективной.
Для начала проанализируем ситуацию: почему 1С ведет себя именно так? Интерфейс «Такси» ориентирован на минимизацию использования мыши и ускорение ввода данных через клавиатуру (автоподбор). По задумке разработчиков платформы, пользователь должен начать набирать текст, а система — предложить подходящие варианты. Кнопка «Показать все» является лишь вспомогательным инструментом, если автоподбор не помог.
Однако на практике, когда справочник небольшой или пользователю привычнее работать со списком, это создает лишние клики. Выясним причину, как управлять этим поведением через свойства элементов управления и настройки платформы.
Если нам необходимо получить быстрый доступ к списку выбора прямо сейчас, не внося никаких изменений в конфигурацию, разберем стандартную возможность платформы. В любом поле ввода ссылочного типа нажатие клавиши F4 мгновенно открывает полную форму выбора, полностью игнорируя выпадающее меню с историей и кнопкой «Показать все». Это самый простой способ для опытных пользователей, позволяющий не ждать отрисовки промежуточного окна.
Для того чтобы изменить поведение интерфейса на уровне разработки, нам потребуется проанализировать свойства элемента формы (Поле ввода). Посмотрим на три ключевых параметра, которые определяют визуальное представление кнопок:
Авто. Если мы принудительно установим Да, в поле появится классическая кнопка с «троеточием».Нет, выпадающее меню исчезнет.Таким образом, чтобы при клике сразу открывалась форма выбора, нам нужно установить КнопкаВыбора = Да и КнопкаВыпадающегоСписка = Нет. В этом случае поле ввода примет классический вид, и нажатие на кнопку выбора сразу приведет к открытию окна справочника.
Разберем ситуацию, когда нам нужно повлиять на поведение поля на уровне самого объекта метаданных. В настройках справочника (на закладке «Формы») есть свойство Быстрый выбор (QuickChoice).
Если установить Быстрый выбор = Да, платформа будет стараться не открывать отдельное окно, а показывать список элементов в выпадающем меню. Важно понимать: если элементов в справочнике много (обычно более 30–50), система автоматически добавит кнопку «Показать все», чтобы не перегружать интерфейс огромным списком. Для маленьких перечислений или справочников-настроек это свойство помогает ускорить работу, но для справочников типа «Контрагенты» оно может дать обратный эффект.
Часто пользователей раздражает не столько кнопка выбора списка, сколько возможность случайно создать новый элемент прямо из поля ввода. Рассмотрим, как ограничить этот функционал:
Кнопка создания. Если установить его в Нет, визуальный элемент создания (плюсик или текст в списке) будет скрыт, даже если у пользователя есть права на создание элементов этого типа.Иногда пользователю мешает кнопка «Показать все» только потому, что автоподбор работает неэффективно. Посмотрим на свойство СпособПоискаПриВводе. По умолчанию стоит Авто (обычно поиск по началу строки). Если изменить его на Любая часть, система будет находить элементы гораздо быстрее, и необходимость нажимать «Показать все» просто отпадет.
Если нам необходимо изменить поведение полей динамически при создании формы, мы можем использовать следующий код в процедуре ПриСозданииНаСервере:
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
// Настройка поля "Контрагент" для прямого выбора
ЭлементКонтрагент = Элементы.Контрагент;
ЭлементКонтрагент.КнопкаВыбора = Истина;
ЭлементКонтрагент.КнопкаВыпадающегоСписка = Ложь;
ЭлементКонтрагент.КнопкаСоздания = Ложь;
КонецПроцедуры
Такой подход позволяет гибко управлять интерфейсом в зависимости от прав текущего пользователя или других условий бизнес-логики.
Поскольку внесение изменений в типовую конфигурацию крайне нежелательно, проанализируем вариант с использованием Расширений конфигурации. Мы можем создать расширение, добавить в него нужные формы документов и массово изменить свойства полей ввода. Это позволит сохранить конфигурацию на полной поддержке, при этом реализовав пожелания пользователей по «тюнингу» интерфейса «Такси».
Подведем итог: универсальной «галочки» в настройках пользователя для отключения «Показать все» не существует. Это архитектурное решение платформы 8.3. Однако сочетание горячих клавиш, настройки свойств КнопкаВыбора / КнопкаВыпадающегоСписка и грамотное управление правами доступа позволяет добиться максимально удобного интерфейса для каждой конкретной задачи.