Почему документ, добавленный в расширение, не отображается в интерфейсе 1С?

Программист 1С v8.3 (Управляемые формы) 1С:Документооборот IT и автоматизация бизнеса
← На главную

Разработка в расширениях — это удобный механизм модификации конфигурации без снятия её с поддержки. Однако часто возникают ситуации, когда новый объект (документ, справочник или регистр) успешно создан в расширении, но при запуске системы в режиме «Предприятие» его не видно ни в разделах меню, ни даже в окне «Все функции» (или «Функции для технического специалиста»).

В этой статье мы подробно разберем, почему так происходит, и пройдем по шагам процесс настройки видимости объектов расширения, опираясь на практический опыт решения подобных задач в конфигурации 1С:Документооборот КОРП 2.1 и других системах на базе БСП.

Шаг 1. Проверка прав доступа и ролей

Как показывает практика, это самая частая причина проблемы. Даже если у пользователя назначена роль ПолныеПрава из основной конфигурации, она ничего не знает о новом объекте, созданном в расширении. Проанализируем ситуацию: для того чтобы объект стал доступен, необходимо выполнить ряд действий в конфигураторе внутри вашего расширения. При необходимости можно использовать обработку для назначения ролей расширений пользователям.

Во-первых, проверьте наличие роли в самом расширении. Вы можете либо заимствовать существующую роль (например, ПолныеПрава), либо создать новую роль внутри расширения. Рассмотрим подробнее основные нюансы:

  1. Право «Просмотр»: Это критически важный момент. Если у роли установлены права на Чтение, Добавление и Изменение, но снята галочка Просмотр, документ не появится в командном интерфейсе и в списке всех функций. Убедитесь, что для вашего нового документа в роли расширения включены права на Чтение и Просмотр.
  2. Заимствование ролей: Если вы используете заимствованную роль ПолныеПрава, проверьте свойство расширения. В некоторых случаях полезно установить флаг «Устанавливать права для новых собственных объектов», чтобы система автоматически давала права на создаваемые метаданные.
  3. Назначение ролей пользователю: После создания роли в расширении не забудьте зайти в режим «Предприятие» и убедиться, что эта роль (она будет отображаться с префиксом расширения) назначена вашему пользователю или включена в соответствующий профиль групп доступа.

Шаг 2. Настройка безопасного режима расширения

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

Выясним причину блокировки через настройки:

  1. В режиме Конфигуратор: Перейдите в меню Конфигурация — Расширения конфигурации. В появившемся списке найдите ваше расширение. Снимите флажки в колонках «Безопасный режим» и «Защита от опасных действий».
  2. В режиме Предприятие: Перейдите в раздел Администрирование — Печатные формы, отчеты и обработки — Расширения. Найдите нужную запись и убедитесь, что флажок «Безопасный режим» снят. После изменения этого флага систему часто требуется перезапустить.

Важно: Если флаг «Безопасный режим» активен, расширение может применяться частично, и добавленные объекты метаданных могут игнорироваться механизмом построения интерфейса.

Шаг 3. Командный интерфейс и подсистемы

Даже если права настроены правильно, объект должен «знать», где именно в интерфейсе ему отображаться. Проанализируем настройки подсистем.

Если вы создали новую подсистему в расширении или используете заимствованную, проверьте следующее:

В открывшемся окне проверьте колонку «Видимость». Часто бывает, что для команды создания или открытия списка нового документа галочка видимости снята по умолчанию. Установите её вручную для нужных ролей.

Также проверьте свойство самого документа Использовать стандартные команды. Если оно отключено, документ не будет предлагать своих команд для размещения в меню.

Шаг 4. Обновление идентификаторов объектов метаданных (БСП)

В современных конфигурациях, таких как 1С:Документооборот 2.1, используется Библиотека стандартных подсистем (БСП). Эта библиотека хранит реестр всех объектов метаданных в специальном справочнике Идентификаторы объектов метаданных. Если вы добавили объект в расширение, БСП может не сразу узнать о его существовании, из-за чего механизмы динамического построения меню или системы прав доступа (профили групп доступа) не увидят ваш документ.

Рассмотрим, как принудительно обновить этот реестр. Можно запустить базу с параметром командной строки:

/С ЗапуститьОбновлениеИнформационнойБазы

Или воспользоваться программным методом, выполнив следующий код во внешней обработке или в консоли кода:

Справочники.ИдентификаторыОбъектовМетаданных.ОбновитьДанныеСправочника();

После выполнения этой процедуры система «просканирует» метаданные (включая расширения) и добавит новые объекты в реестр БСП.

Шаг 5. Профили групп доступа в режиме «Предприятие»

В конфигурациях с развитой подсистемой прав (как в «Документообороте») простого наличия роли в конфигураторе недостаточно. Права в системе работают через Профили групп доступа. Для упрощения их конфигурирования подойдёт инструмент для настройки и аудита профилей групп доступа.

Разберем алгоритм действий в режиме «Предприятие»:

  1. Зайдите в меню Администрирование — Настройки пользователей и прав — Профили групп доступа.
  2. Найдите профиль, назначенный вашему пользователю (например, «Администратор» или «Полные права»).
  3. Проверьте список ролей внутри профиля. Если вы создали новую роль в расширении, она должна появиться в этом списке. Установите напротив неё флажок.
  4. Запишите изменения. При этом система может запустить фоновое задание по обновлению прав доступа.

Шаг 6. Проверка функциональных опций

Иногда новый документ привязывают к существующей Функциональной опции (ФО), заимствованной из основной конфигурации. Посмотрим на ситуацию: если в основной базе эта функциональная опция выключена (значение Ложь), то объект будет скрыт интерфейсом платформы везде, кроме окна «Функции для технического специалиста» (и то при условии наличия прав).

Проверьте вкладку «Функциональные опции» в свойствах вашего документа в расширении. Если там указана какая-либо опция, убедитесь, что она включена в настройках программы.

Шаг 7. Очистка кэша метаданных

Если все настройки выполнены верно, но документ так и не появился, велика вероятность влияния локального кэша платформы. Платформа 1С кэширует структуру метаданных для ускорения работы, и иногда «старый» кэш мешает увидеть изменения из расширения.

Для решения этой проблемы попробуйте следующие действия:

Резюме

Подведем итог. Чтобы документ из расширения стал виден, мы должны убедиться, что:

  1. У расширения отключен безопасный режим.
  2. У пользователя есть роль с правом «Просмотр» на этот документ.
  3. Документ включен в подсистему, которая отображается в интерфейсе.
  4. В командном интерфейсе подсистемы включена видимость команды документа.
  5. Обновлены идентификаторы объектов метаданных (для конфигураций на БСП).

Проанализировав все эти шаги, вы гарантированно сможете найти причину «исчезновения» объекта и успешно вывести его в пользовательский интерфейс.

← На главную