При переходе с редакции 2.0 на 1С:Бухгалтерию предприятия 3.0 многие пользователи замечают отсутствие привычной индикации: раньше при заполнении дополнительных реквизитов или сведений на кнопке появлялась синяя галочка. В интерфейсе «Такси» кнопка остается неизменной, из-за чего сложно быстро понять, внесены ли данные по документу или справочнику. Проанализируем причину такого поведения системы и разберем доступные способы решения задачи.
Разберем, почему разработчики Библиотеки Стандартных Подсистем (БСП) отказались от визуального значка на кнопке командной панели:
ДополнительныеСведения для каждого отображаемого объекта.— Дополнительные реквизиты хранятся в табличной части самого объекта и выводятся непосредственно на его форму.
— Дополнительные сведения хранятся отдельно в регистре сведений ДополнительныеСведения и вызываются по специальной кнопке в отдельном окне.
Рассмотрим подробнее способы, которые позволяют сделать заполненные реквизиты и сведения наглядными для пользователей без потери производительности.
Самый простой и эффективный способ в 1С:Бухгалтерии 3.0 — вывести нужный дополнительный реквизит прямо в журнал документов или форму списка справочника.
Разберем процесс настройки по шагам:
После этого реквизит отобразится в журнале в виде отдельной колонки. Пользователь сразу увидит его значение без необходимости заходить в каждый документ.
Если требуется подсветка документов с заполненными сведениями без добавления новых колонок, проанализируем механизм условного оформления.
Выполним следующие действия:
В результате строки документов, для которых внесены дополнительные данные, будут автоматически выделяться выбранным цветом.
Если пользователям необходим индикатор именно на форме самого документа, задача решается с помощью внешнего расширения без снятия типовой конфигурации с поддержки.
Разберем логику работы программного кода. В обработчиках событий формы ПриСозданииНаСервере или ПриЧтенииНаСервере выполняется проверка наличия записей в регистре сведений ДополнительныеСведения для текущей ссылки.
Посмотрим на пример реализации проверки на сервере:
&НаСервере
Процедура ПроверитьЗаполнениеДопСведений(Форма, СсылкаНаОбъект)
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ ПЕРВЫЕ 1
| ДополнительныеСведения.Свойство КАК Свойство
|ИЗ
| РегистрСведений.ДополнительныеСведения КАК ДополнительныеСведения
|ГДЕ
| ДополнительныеСведения.Объект = &Объект";
Запрос.УстановитьПараметр("Объект", СсылкаНаОбъект);
РезультатЗапроса = Запрос.Выполнить();
Если НЕ РезультатЗапроса.Пустой() Тогда
// Меняем заголовок кнопки или добавляем надпись на форму
ЭлементФормы = Форма.Элементы.Найти("КомандаДополнительныеСведения");
Если ЭлементФормы <> Неопределено Тогда
ЭлементФормы.Заголовок = "Доп. сведения (*)";
КонецЕсли;
КонецЕсли;
КонецПроцедуры
Выяснив причину отсутствия значка в типовом решении, мы можем выбрать наиболее подходящий вариант: стандартную настройку динамического списка средствами пользователя или точечную доработку интерфейса с помощью расширения.