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