К статье
Практический материал

Отчеты и Аналитика · 11 мин

Как зафиксировать шапку в отчете 1С

Как зафиксировать шапку в отчете 1С: настройка фиксации строк и колонок в табличном документе, СКД и при печати. Разбор ошибок и способов проверки результата.

При прокрутке длинного отчета в 1С заголовки колонок уходят вверх, и становится непонятно, какие данные в какой колонке находятся. Проблема решается фиксацией шапки — верхних строк и, при необходимости, левых колонок табличного документа. После настройки заголовки остаются на экране при любой прокрутке, как замороженные области в Excel.

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

Материал подходит для пользователей конфигураций на управляемых формах (1С:Бухгалтерия, 1С:Управление торговлей, 1С:ERP, 1С:ЗУП) и для специалистов, дорабатывающих отчеты в конфигураторе.

Как устроена фиксация шапки в табличном документе 1С

Табличный документ в 1С поддерживает два независимых вида фиксации: сверху (строки) и слева (колонки). Фиксация сверху закрепляет указанное количество верхних строк — обычно это заголовок отчета и шапка таблицы. Фиксация слева закрепляет колонки — например, наименование номенклатуры или контрагента, чтобы при горизонтальной прокрутке оно не исчезало.

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

Быстрый способ: фиксация через меню табличного документа

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

Порядок действий: сформируйте отчет, затем в командной панели табличного документа откройте меню «Ещё» (или меню «Таблица» в обычных формах) и найдите команду фиксации. В зависимости от версии платформы она называется «Зафиксировать строку», «Зафиксировать колонку» или «Фиксация». Укажите номер строки, до которой нужно закрепить область.

Удобный приём: поставьте курсор в ячейку первой строки данных сразу под шапкой — платформа предложит зафиксировать всё, что выше текущей строки. Аналогично работает фиксация слева: курсор ставится в колонку справа от той, которую нужно закрепить.

Учтите ограничение: ручная фиксация действует только в текущем сеансе просмотра. При следующем формировании отчета настройка сбросится, если она не задана в самом отчете.

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

Фиксация шапки в типовом отчете на СКД через настройки

Большинство типовых отчетов в 1С:Бухгалтерии, 1С:Управлении торговлей и 1С:ERP построены на системе компоновки данных. В таких отчетах фиксация задаётся в настройках и сохраняется вместе с вариантом отчета — это правильный способ для постоянной работы.

Откройте отчет, перейдите в «Настройки» (кнопка «Настройки» или «Ещё → Изменить вариант»). Переключитесь в расширенный режим настроек, если отображается упрощенный. Найдите вкладку «Другие настройки» или параметр «Фиксация» — в ряде конфигураций он представлен отдельными параметрами «Фиксация сверху» и «Фиксация слева». Укажите количество закрепляемых строк и колонок.

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

Программная фиксация шапки в конфигураторе

Если вы дорабатываете собственный отчет или внешнюю печатную форму, фиксация задаётся в коде через свойства объекта «ТабличныйДокумент». Это самый надёжный способ: результат не зависит от действий пользователя.

Используются два свойства: ФиксацияСверху (количество закрепляемых строк) и ФиксацияСлева (количество закрепляемых колонок). Устанавливать их нужно после полного вывода данных в табличный документ, но до отображения его пользователю.

bsl
ТабДок = Новый ТабличныйДокумент;
// ... вывод областей макета ...
ТабДок.ФиксацияСверху = 3; // шапка занимает 3 строки
ТабДок.ФиксацияСлева = 1;  // закрепить первую колонку

Типичная ошибка — указать фиксацию до вывода областей и потом перезаписать её методом, который создает документ заново. Назначайте свойства в самом конце формирования отчета, непосредственно перед показом или печатью.

Разработчику типового отчета на СКД задать фиксацию можно и в схеме компоновки: в конфигураторе откройте основную схему отчета, перейдите на вкладку «Настройки», внизу откройте «Другие настройки» и установите параметры фиксации. Тогда отчет будет формироваться с закрепленной шапкой по умолчанию у всех пользователей.

Фиксация шапки при печати и повтор заголовков на каждой странице

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

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

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

Способы закрепить шапку

Ручная фиксация через меню «Ещё»

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

Параметр «Фиксация» в настройках СКД

Сохраняется в варианте отчета, подходит для постоянной работы; доступен не во всех отчетах.

Свойства ФиксацияСверху/ФиксацияСлева в коде

Полный контроль и стабильный результат, но требует доработки конфигурации или внешнего отчета.

Сквозные строки при печати

Решает задачу повтора шапки на каждой странице, но не влияет на отображение на экране.

Проверка результата и типичные ошибки

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

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

Вторая частая ситуация: фиксация задана, но не работает. Проверьте, не формируется ли отчет в другой табличный документ (например, программно создается новый объект без переноса настроек), и не сбрасывает ли конфигурация параметры при переформировании.

Типичные ошибки
01
Указано меньше строк, чем занимает шапка — нижняя строка заголовков уходит при прокрутке.
02
Указано больше строк, чем нужно — «прилипают» строки данных, уменьшается область просмотра.
03
Фиксация задана вручную, но пользователь ждёт её при следующем формировании — ручная настройка не сохраняется.
04
Ожидание повтора шапки на печати после экранной фиксации — для печати нужны сквозные строки.
05
Свойства фиксации установлены до вывода областей и перезаписаны при формировании — задавать их нужно в конце.
Контрольные точки

Как проверить результат

Вертикальная прокрутка
Норма

Шапка остаётся наверху на любой глубине прокрутки

Тревожный признак

Заголовки уходят вверх вместе с данными

Граница фиксации
Норма

Закреплены ровно строки шапки, первая строка данных прокручивается

Тревожный признак

Закреплены лишние строки данных или часть шапки не закреплена

Повторное формирование
Норма

После пересчета отчета фиксация сохраняется (для настройки в СКД или в коде)

Тревожный признак

Фиксация сбрасывается — значит, она была задана только вручную

Печать
Норма

Шапка повторяется на каждой странице (при настроенных сквозных строках)

Тревожный признак

На второй странице данных заголовков нет

Ограничения и когда нужна помощь разработчика

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

Перед изменением типовой конфигурации убедитесь, что у вас есть резервная копия информационной базы. Доработку лучше выполнять через расширение конфигурации или внешний отчет — так обновления типового релиза не затрут изменения.

Частые вопросы о фиксации шапки в 1С

Почему команда «Зафиксировать строку» неактивна в меню?

Чаще всего табличный документ открыт в режиме только для просмотра или отчет выведен в специализированную форму без стандартной командной панели. Попробуйте сформировать отчет заново и проверьте, доступны ли другие команды меню «Ещё». Если нет — фиксацию сможет добавить только разработчик через настройки СКД или код.

Сохранится ли ручная фиксация при следующем открытии отчета?

Нет. Ручная фиксация действует только в текущем окне сформированного документа. Чтобы шапка закреплялась автоматически, задайте параметр «Фиксация» в настройках варианта отчета и сохраните вариант, либо попросите разработчика установить свойство ФиксацияСверху в коде.

Как зафиксировать и шапку, и первую колонку одновременно?

Оба вида фиксации независимы и совместимы. В настройках СКД укажите значения параметров фиксации сверху и слева, в коде — свойства ФиксацияСверху и ФиксацияСлева. При ручной настройке выполните обе команды последовательно.

Почему на печати шапка не повторяется, хотя на экране зафиксирована?

Экранная фиксация и повтор на печати — разные механизмы. Для принтера настройте сквозные строки в параметрах страницы табличного документа. В типовых печатных формах повтор шапки обычно уже предусмотрен, проверьте настройки конкретной формы.

Как узнать, сколько строк занимает шапка отчета?

Сформируйте отчет и посчитайте строки от первой строки документа до последней строки заголовков включительно, ориентируясь на номера строк слева. Учитывайте заголовок отчета, строку периода и пустые декоративные строки — все они входят в счёт. Полученное число и есть значение фиксации сверху.

Работает ли фиксация в веб-клиенте 1С?

Да, фиксация табличного документа поддерживается и в веб-клиенте, и в тонком клиенте. Отличия могут быть только в расположении команд меню. Если команда фиксации недоступна в веб-клиенте конкретной версии, используйте настройку через параметры отчета или доработку в конфигураторе.

Итог

Что важно запомнить

Шапка отчета фиксируется тремя путями: вручную через меню «Ещё» (временно), через параметр «Фиксация» в настройках СКД (постоянно) и через свойства ФиксацияСверху/ФиксацияСлева в коде (для разработчиков). Для печати настраивайте сквозные строки отдельно. Проверяйте результат прокруткой и повторным формированием отчета.