При разработке в среде 1С:Предприятие 8.3 программисты часто сталкиваются с задачей добавления нового документа в существующий интерфейс типовой конфигурации. Казалось бы, задача тривиальная: создать документ, привязать его к нужной подсистеме и обновить конфигурацию базы данных. Однако в современных конфигурациях, созданных на базе Библиотеки стандартных подсистем (БСП) — таких как «1С:Бухгалтерия предприятия 3.0» — этот процесс имеет множество скрытых нюансов. Разработчик может обнаружить, что созданный им документ упорно не появляется в интерфейсе «1С:Предприятие», его нет в панели навигации, а в настройках разделов он отсутствует в списке доступных команд.
В этой статье мы подробно разберем, как правильно добавить новый документ в интерфейс типовой конфигурации, настроить его отображение в нужном разделе и избежать типичных ошибок, связанных с кэшированием метаданных, правами доступа и функциональными опциями.
Первая и самая частая ошибка начинающих разработчиков — это включение документа в технические или общие подсистемы. Например, если добавить документ только в подсистемы БухгалтерияПредприятияПодсистемы или ПодсистемыРегламентированногоУчета, он не появится на панели разделов в режиме «1С:Предприятие».
Рассмотрим ситуацию на конкретном примере. Нам нужно добавить документ в раздел «Операции», рядом с пунктом меню «Регламентные операции». Для этого выполним следующие действия:
УчетНалогиОтчетность82 и ее подчиненная ветка ЗакрытиеПериода.УчетНалогиОтчетность82 -> ЗакрытиеПериода (или аналогичной целевой подсистемы в зависимости от того, куда именно должен попасть документ).После включения документа в правильную подсистему он получит привязку к конкретному разделу интерфейса.
Для того чтобы платформа 1С автоматически сформировала команды для открытия формы списка и создания нового документа, у объекта метаданных должно быть включено использование стандартных команд. Проанализируем этот момент подробнее:
ЗакрытиеПериода и выберем пункт «Командный интерфейс».В конфигурациях на базе БСП вся структура метаданных дублируется в режиме «1С:Предприятие» в специальном служебном справочнике ИдентификаторыОбъектовМетаданных. Это необходимо для корректной работы подсистем безопасности, назначения ролей, RLS (разграничения прав на уровне записей) и динамического построения интерфейса. Если просто запустить базу после добавления документа, система может выдавать ошибки или скрывать документ из интерфейса, так как его идентификатор еще не зарегистрирован в базе данных.
Выясним, как обновить этот справочник. Существует три основных способа:
Сервис -> Параметры -> Запуск 1С:Предприятия -> Основные и в поле «Параметры запуска» пропишем:
/C ЗапуститьОбновлениеИнформационнойБазы
Обратите внимание: буква «C» должна быть обязательно латинской! После этого запустим отладку. При старте системы выполнится процедура обновления вспомогательных данных БСП, и новый документ зарегистрируется в справочнике идентификаторов.
Справочники.ИдентификаторыОбъектовМетаданных.ОбновитьДанныеСправочника(Истина);
Этот метод принудительно перезапишет и актуализирует структуру метаданных в справочнике.
3.0.150.1 на 3.0.150.2). При первом запуске обновленной конфигурации БСП автоматически определит изменение версии и запустит обновление метаданных и регистров сведений.Даже если мы работаем под пользователем с полными правами, в современных конфигурациях механизмы БСП накладывают дополнительные ограничения. Интерфейс управляемого приложения динамически скрывает элементы, к которым у текущего пользователя нет прав доступа (чтения или просмотра).
Проверим настройки безопасности:
ЧтениеНовогоДокумента и ДобавлениеИзменениеНовогоДокумента) или добавим соответствующие права в существующие типовые роли.Администрирование -> Настройки пользователей и прав, обновить профили и убедиться, что роли назначены нашему пользователю.В конфигурации «1С:Бухгалтерия предприятия 3.0» видимость разделов, меню и документов жестко регулируется механизмом функциональных опций. Рассмотрим ситуацию, когда подсистема, в которую мы добавили документ, привязана к какой-то опции:
ЗакрытиеПериода или используемые нами команды подчинены функциональной опции (например, «Использовать регламентные операции» или «Вести учет по нескольким организациям»), то при отключении этой опции в настройках программы документ пропадет из интерфейса.Главное -> Функциональность).Если все предыдущие шаги выполнены корректно, но документ все еще не появился на панели навигации, проблема кроется в индивидуальном кэше настроек интерфейса конкретного пользователя.
Когда пользователь хотя бы один раз вручную настраивал панель навигации (например, перетаскивал пункты через «шестеренку»), платформа 1С перестает применять к нему настройки по умолчанию, заданные разработчиком в Конфигураторе. Персональная структура интерфейса сохраняется в системных настройках пользователя.
Чтобы решить эту проблему и отобразить новый документ, выполним следующие действия:
Проанализировав все описанные шаги, мы можем гарантировать успешное появление нового документа в интерфейсе конфигурации «1С:Бухгалтерия предприятия 3.0». Сочетание правильного выбора подсистемы, настройки командного интерфейса, своевременного обновления идентификаторов объектов метаданных БСП и сброса настроек навигации пользователя позволяет быстро и без ошибок внедрять новые объекты автоматизации в типовые решения.