Как добавить отчет на начальную страницу и настроить его видимость по ролям?

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

При разработке и адаптации конфигураций на платформе 1С:Предприятие 8.3 часто возникает задача предоставить пользователю быстрый доступ к отчету сразу при входе в программу. Однако нередко разработчики сталкиваются с ситуацией: права и роли назначены, отчет существует в конфигурации, но на стартовом экране или в командном интерфейсе он не отображается либо не переносится в нужные списки редактора. Разберем детально, как устроены начальная страница и командный интерфейс основного раздела, выясним причины такого поведения и настроим видимость отчета по ролям.

Различие между «Начальной страницей» и «Основным разделом»

Прежде всего проанализируем терминологию управляемого интерфейса «Такси». Понятие «Рабочий стол», привычное по обычным формам платформы 8.2, в управляемом приложении разделено на две самостоятельные сущности:

  1. Рабочая область начальной страницы — это центральное пространство экрана, отображающееся при запуске программы. Сюда внедряются непосредственно готовые формы объектов (например, форма отчета, динамический список документов или сводный монитор показателей). Формы могут располагаться в одну или две колонки.
  2. Командный интерфейс основного раздела — это панель действий и навигации самого верхнего уровня («Главное»), где размещаются гиперссылки и кнопки вызова команд. Нажатие такой кнопки открывает отчет в отдельной рабочей вкладке. Отчет при этом может не принадлежать ни к одной подсистеме конфигурации.

Почему отчет отсутствует в списке или не переносится в редакторе

Рассмотрим частые затруднения, возникающие при попытке настроить интерфейс в конфигураторе:

  1. Неверная ветка-приемник в редакторе. Окно «Командный интерфейс основного раздела» состоит из списка доступных команд слева и дерева разделов справа. Команда отчета может быть перенесена кнопкой-стрелкой только в подходящую категорию — Панель действий.Отчеты. Если в правом окне выделен корень или несовместимая группа, платформа блокирует действие кнопки переноса.
  2. Свойство «Использовать стандартные команды». Проверим палитру свойств самого отчета. Если у свойства ИспользоватьСтандартныеКоманды снят флаг, платформа не генерирует системную команду открытия, вследствие чего объект вообще не появляется в списках доступных команд интерфейса.
  3. Отсутствие формы или схемы компоновки данных. Платформа формирует команду для интерфейса только тогда, когда у отчета физически создана основная форма отчета либо назначена основная СхемаКомпоновкиДанных. Без этого отчет не считается готовым к интерактивному выводу.
  4. Влияние функциональных опций. Если отчет привязан к функциональной опции, выключенной в конфигурации или в пользовательском сеансе, команда будет скрыта автоматически независимо от прав доступа.

Пошаговая настройка размещения отчета в командном интерфейсе основного раздела

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

  1. Откроем дерево метаданных конфигурации, перейдем к отчету и убедимся, что включено свойство ИспользоватьСтандартныеКоманды, а также задана основная схема компоновки данных или форма.
  2. В дереве ролей назначим для требуемой роли права Просмотр и ИспользованиеФорм (или Открыть) для нашего отчета.
  3. Кликнем правой кнопкой мыши по корню конфигурации и выберем пункт «Открыть командный интерфейс основного раздела».
  4. В правой части окна развернем группу «Панель действий» и установим курсор точно на ветку «Отчеты».
  5. В левой части окна выделим команду нашего отчета и нажмем кнопку перемещения вправо (или дважды кликнем по команде).
  6. Настроим видимость по ролям в правой части окна. Обратим внимание: флаг видимости имеет три состояния. Переведем флаг в активное состояние для нужной нам роли двойным щелчком мыши.
  7. Применим изменения конфигурации базы данных.

Размещение готовой формы отчета на начальной странице

Если требуется, чтобы сам отчет (его форма) был постоянно открыт на начальной странице при входе пользователя, выполним следующие действия:

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

Программная настройка состава начальной страницы

Рассмотрим альтернативный программный вариант. Мы можем динамически управлять составом форм начальной страницы в модуле управляемого приложения при старте сеанса с помощью объекта НастройкиНачальнойСтраницы:


Процедура ПриНачалеРаботыСистемы()
    
    Если РольДоступна("Бухгалтер") Тогда
        
        НастройкиИнтерфейса = ПолучитьНастройкиНачальнойСтраницы();
        
        ФормаОтчета = Новый ОписаниеФормыНачальнойСтраницы;
        ФормаОтчета.ИмяФормы = "Отчет.КарточкаСчета.Форма.ФормаОтчета";
        ФормаОтчета.Видимость = Истина;
        
        НастройкиИнтерфейса.ЛеваяКолонка.Очистить();
        НастройкиИнтерфейса.ЛеваяКолонка.Добавить(ФормаОтчета);
        
        УстановитьНастройкиНачальнойСтраницы(НастройкиИнтерфейса);
        
    КонецЕсли;

КонецПроцедуры

Почему изменения не видны пользователю: пользовательские настройки

Выясним распространенную причину, по которой после всех настроек в конфигураторе пользователь всё равно не видит отчет. Если пользователь в режиме «1С:Предприятие» хотя бы раз открывал диалог настройки через «Главное меню — Вид — Настройка начальной страницы» (или «Настройка панели действий»), платформа сохраняет его персональную раскладку в системных таблицах базы.

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

← На главную