При разработке отчетов на базе Системы компоновки данных (СКД) в современных конфигурациях, таких как «Бухгалтерия предприятия 3.0» или «ERP Управление предприятием», программисты часто сталкиваются с тем, что созданные в Конфигураторе варианты отчета не отображаются на основной командной панели. Пользователю приходится искать их через громоздкое меню Еще — Прочее — Выбрать вариант отчета. В этой статье мы разберем, как интегрировать отчет в механизмы Библиотеки стандартных подсистем (БСП), чтобы кнопка выбора варианта работала корректно и интуитивно понятно.
Проанализируем ситуацию: почему во внешних файлах отчет может работать правильно, а после встраивания в конфигурацию «теряет» панель вариантов? Все дело в том, что в современных решениях 1С управление интерфейсом отчетов берет на себя подсистема БСП «Варианты отчетов». Платформа больше не выводит список вариантов напрямую из схемы компоновки. Вместо этого она обращается к специальному справочнику ВариантыОтчетов. Если в этом справочнике нет записей, соответствующих вашим настройкам в СКД, кнопка на панели останется пустой или будет скрыта.
Первым делом необходимо сообщить платформе и БСП, что отчет должен использовать стандартное хранилище для своих настроек. Для этого выполним следующие действия:
ХранилищеВариантов.ХранилищеВариантовОтчетов.Важный нюанс: как только вы установите это свойство, механизм поиска вариантов переключится на справочник БСП. Если после этого действия варианты «пропали» из списка выбора вообще, не пугайтесь — это означает, что система теперь ищет их в базе данных, но справочник еще не заполнен информацией о ваших новых вариантах из конфигуратора.
Чтобы варианты из вашей СКД попали в справочник ВариантыОтчетов, необходимо инициировать обновление вспомогательных данных. Рассмотрим несколько способов, как это сделать.
Способ А: Использование параметра запуска
Это самый простой метод для разработчика. Запустите сеанс «1С:Предприятие» из конфигуратора, предварительно указав в параметрах запуска (Сервис — Параметры — Запуск 1С:Предприятия — Основные) следующую команду:
/С ЗапуститьОбновлениеИнформационнойБазы
При старте система просканирует метаданные и создаст недостающие элементы в служебных справочниках.
Способ Б: Внешняя обработка БСП
В составе дистрибутива БСП (или на ИТС) поставляется обработка ОбновлениеВспомогательныхДанных.epf. Запустив ее в режиме пользователя, можно принудительно обновить информацию о вариантах отчетов без перезапуска всей базы.
Для того чтобы отчеты корректно регистрировались в системе и сразу распределялись по нужным разделам интерфейса (подсистемам), рекомендуется использовать программный интерфейс БСП. Разберем, как настроить модуль менеджера отчета.
В модуле менеджера вашего отчета необходимо создать экспортную процедуру ОпределитьНастройкиОтчета. В ней мы укажем параметры, которые БСП использует при регистрации. Рассмотрим пример кода:
Процедура ОпределитьНастройкиОтчета(Настройки) Экспорт
Настройки.Размещение.Добавить(); // Здесь указываются разделы интерфейса
Настройки.Варианты.Очистить();
// Настройка конкретного варианта
НовыйВариант = Настройки.Варианты.Добавить();
НовыйВариант.Имя = "ОсновнойВариант"; // Имя из СКД
НовыйВариант.ВидимостьПоУмолчанию = Истина;
НовыйВариант.Описание = НСтр("ru = 'Основной аналитический отчет по продажам'");
КонецПроцедуры
После добавления этого кода и обновления конфигурации базы данных, система при первом же открытии или обновлении справочников подхватит настройки и отобразит вариант на кнопке выбора.
Если после всех манипуляций варианты все еще не появились на кнопке, проанализируем ситуацию в режиме пользователя:
Если вы разрабатываете внешний отчет (файл .erf), механизм работы немного отличается. Чтобы получить полноценную кнопку вариантов, не обязательно прописывать хранилище в самом файле. Достаточно подключить отчет через механизм «Дополнительные отчеты и обработки». При загрузке файла система сама предложит импортировать варианты из СКД. В дальнейшем управлять ими можно будет через карточку дополнительного отчета в справочнике.
Подведем итог. Для того чтобы варианты отчета СКД стали доступны через кнопку «Выбрать вариант», необходимо обеспечить связку метаданных и данных справочника БСП. Мы рассмотрели три уровня настройки:
1. Уровень платформы: установка ХранилищеВариантов.
2. Уровень кода: описание настроек в ОпределитьНастройкиОтчета модуля менеджера.
3. Уровень данных: обновление справочника ВариантыОтчетов через параметры запуска или административные настройки.
Соблюдение этой последовательности гарантирует, что ваши отчеты будут выглядеть профессионально и будут удобны для конечных пользователей.