Отчеты и Аналитика · 10 мин
Как установить заголовок отчета СКД в 1С
Как установить заголовок СКД в 1С: через параметры вывода, программно и в настройках пользователя. Разбор типичных ошибок, проверка результата и ответы на вопросы.
Заголовок отчета, построенного на системе компоновки данных (СКД), выводится не автоматически из названия отчета, а управляется отдельным параметром вывода. Поэтому даже корректно настроенный отчет часто открывается без шапки либо с неподходящим текстом. Ниже разобраны все рабочие способы задать заголовок: в конструкторе настроек, программно и со стороны пользователя.
Под заголовком СКД понимается текст, который выводится в начале результата отчета при включенном параметре «Заголовок». Сам текст берется либо из значения этого параметра, либо из представления отчета/варианта, если значение не задано. Управление выполняется через коллекцию ЗначенияПараметровВывода компоновщика настроек.
Где в СКД хранится заголовок и как он выводится
В схеме компоновки данных заголовок не является отдельным полем макета. Это параметр вывода с именем Title (в русском интерфейсе — «Заголовок»), который присутствует в настройках отчета по умолчанию. Когда параметр включен, компоновщик выводит его значение в начало табличного документа результата.
Если значение параметра пустое, но использование включено, СКД подставляет представление варианта отчета или синоним самого отчета. Именно поэтому иногда заголовок «появляется сам», а после переименования варианта меняется текст. Понимание этой логики помогает осознанно выбрать способ: фиксированный текст в настройках или динамическое формирование в коде.
Параметр вывода действует на уровне всего результата, а не отдельных группировок. Для шапок внутри таблицы (названия колонок, группировок) используются другие механизмы — макеты полей и заголовки ресурсов, их не следует путать с общим заголовком отчета.
Установка заголовка в конструкторе настроек СКД
Самый простой способ, не требующий изменения кода, — задать заголовок прямо в настройках варианта отчета. Это удобно, когда текст постоянный и одинаков для всех пользователей.
- 1Откройте отчет в конфигураторе или в режиме «Еще» → «Изменить вариант» в пользовательском режиме
- 2Перейдите в окно настроек схемы компоновки данных (закладка «Настройки» конструктора)
- 3Откройте закладку «Другие настройки» внизу окна
- 4Найдите параметр «Заголовок», установите флажок использования и введите нужный текст
- 5Сохраните вариант отчета и сформируйте отчет для проверки
В конфигураторе путь такой: откройте основную схему компоновки данных отчета, перейдите на закладку «Настройки», затем в нижней части — на вкладку «Другие настройки». В списке параметров найдите «Заголовок», отметьте его флажком и впишите текст в колонку значения. Текст может содержать несколько слов и спецсимволы, переносы строк лучше не использовать — они могут отображаться некорректно.
В пользовательском режиме (если у пользователя есть право изменения вариантов) тот же параметр доступен через расширенные настройки отчета: «Еще» → «Изменить вариант» → «Дополнительные настройки». После сохранения заголовок применится ко всем, кто использует этот вариант.
Программная установка заголовка
Когда текст заголовка должен зависеть от отбора, периода или имени пользователя, его устанавливают кодом. Типичное место — обработчик ПриКомпоновкеРезультата в модуле объекта отчета либо код формы отчета перед формированием.
Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка)
ПараметрЗаголовок = КомпоновщикНастроек.Настройки.ПараметрыВывода.НайтиЗначениеПараметра(Новый ПараметрКомпоновкиДанных("Заголовок"));
Если ПараметрЗаголовок <> Неопределено Тогда
ПараметрЗаголовок.Использование = Истина;
ПараметрЗаголовок.Значение = "Продажи за " + Формат(ТекущаяДатаСеанса(), "ДЛФ=D");
КонецЕсли;
КонецПроцедурыКлючевые моменты кода: параметр ищется по имени «Заголовок» через объект ПараметрКомпоновкиДанных, затем обязательно устанавливается и Использование, и Значение. Если задать только значение без включения использования, заголовок в результате не появится — это самая частая причина «неработающего» кода.
Для внешних отчетов и отчетов, формируемых из собственной формы, тот же прием применяется к настройкам, которые передаются в компоновщик макета. Убедитесь, что вы меняете именно те настройки, которые потом участвуют в компоновке, а не их копию.
Заголовок в динамических и пользовательских настройках
В типовых конфигурациях отчеты часто выводятся через механизм пользовательских настроек: пользователь видит быстрые отборы, а расширенные параметры скрыты. Чтобы заголовок было видно и доступно для изменения пользователю, параметр нужно добавить в пользовательские настройки с режимом отображения «Быстрый доступ» или «Обычный».
Делается это в конструкторе настроек: в списке пользовательских настроек добавьте новый элемент, выберите параметр «Заголовок» и задайте представление, например «Название отчета». После этого пользователь сможет сам менять текст перед формированием без входа в конфигуратор.
Если заголовок должен быть строго фиксированным, наоборот, исключите параметр из пользовательских настроек и задайте значение в основных настройках варианта. Тогда пользователь не сможет случайно очистить или изменить текст.
Способы задания заголовка
Подходит для постоянного текста; не требует кода; меняется только разработчиком или уполномоченным пользователем
Подходит для динамического текста (период, отбор, организация); требует изменения модуля отчета
Подходит, когда текст должен менять сам пользователь; требует аккуратной настройки видимости параметра
Проверка результата и типичные ошибки
После установки заголовка сформируйте отчет и убедитесь, что текст выводится первой строкой результата. Если заголовка нет, последовательно проверьте контрольные точки.
Как проверить результат
Флажок установлен, значение заполнено
Значение есть, но флажок снят — заголовок не выводится
Код установки заголовка выполняется до вызова компоновщика макета
Настройки меняются после формирования результата — изменения не попадают в отчет
Заголовок задан в том варианте, который реально используется
Текст задан в другом варианте или в основной схеме, а открывается пользовательский вариант
Отдельная ситуация — отчеты, где результат формируется в фоновом задании (типовой механизм БСП). В этом случае программную установку заголовка следует выполнять в модуле объекта отчета, а не в форме, иначе код формы не выполнится в фоне.
Альтернативы: макет заголовка и оформление
Если нужен не просто текст, а оформленная шапка с логотипом, периодом и отбором, параметра «Заголовок» недостаточно. В этом случае создают собственный макет СКД: в схеме компоновки на закладке «Макеты» добавляют макет заголовка группировки или оформляют область через «Макет оформления». Там можно задать ячейки с параметрами и вывести произвольную структуру шапки.
Еще один вариант — выводить служебную информацию не в заголовок, а в параметры «Выводить отбор» и «Выводить параметры данных»: тогда под заголовком автоматически появится строка с периодом и отбором. Это избавляет от необходимости вручную собирать длинный текст заголовка.
Удобный шаблон заголовка для управленческих отчетов: «<Название> за <период>». Период лучше формировать из параметров данных отчета (НачалоПериода, КонецПериода), а не из текущей даты — тогда при пересмотре старого сформированного отчета заголовок останется корректным.
FAQ
Почему заголовок задан, но в результате отчета его нет?
Чаще всего у параметра «Заголовок» не включено свойство «Использование». Проверьте флажок в «Других настройках» или установите Использование = Истина в коде. Также убедитесь, что формируется тот вариант отчета, в котором задан текст.
Можно ли вывести заголовок в несколько строк?
Штатный параметр «Заголовок» рассчитан на однострочный текст; переносы могут отображаться некорректно. Для многострочной шапки используйте собственный макет в схеме компоновки с несколькими ячейками и параметрами.
Как подставить в заголовок выбранный период отчета?
Программно в обработчике ПриКомпоновкеРезультата прочитайте значения параметров данных (например, НачалоПериода и КонецПериода) через Настройки.ПараметрыДанных и сформируйте строку функцией Формат с нужным форматом даты.
Как скрыть заголовок полностью?
Снимите флажок использования у параметра «Заголовок» в настройках варианта или установите Использование = Ложь в коде. Если заголовок выводится из представления варианта, отключение параметра уберет и его.
Работает ли установка заголовка во внешних отчетах?
Да, механизм тот же: параметр вывода «Заголовок» присутствует в настройках любой СКД. Отличие только в том, что для внешнего отчета программную установку выполняют в его модуле объекта или в коде, который формирует отчет извне.
Почему после обновления конфигурации заголовок пропал?
Если текст был задан в пользовательском варианте, при обновлении вариант мог быть замещен типовым. Проверьте настройки текущего варианта и при необходимости восстановите заголовок; для критичных отчетов надежнее задавать текст в основных настройках схемы или программно.
Что важно запомнить
Заголовок СКД — это параметр вывода «Заголовок»: задайте значение и включите использование в «Других настройках» конструктора либо программно через ПараметрыВывода. Для динамического текста используйте ПриКомпоновкеРезультата, для сложной шапки — собственный макет. Всегда проверяйте, что изменения применяются к тому варианту и тем настройкам, по которым реально формируется отчет.