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

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

Как свернуть табличный документ в 1С

Как свернуть табличный документ в 1С: сворачивание группировок, скрытие строк и колонок, программные методы и типичные ошибки при работе с отчетами.

Под сворачиванием табличного документа в 1С обычно понимают три разные задачи: свернуть группировки в отчете до нужного уровня, скрыть отдельные строки или колонки и программно вывести документ уже в свернутом виде. Каждая из них решается своими инструментами — от кнопок на панели до методов встроенного языка.

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

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

Что значит «свернуть» табличный документ

Табличный документ в 1С — это универсальный формат представления данных: в нем открываются отчеты, печатные формы, расшифровки. Внутри документа данные организованы в строки и колонки, а строки могут объединяться в иерархические группировки — например, «Контрагент → Договор → Документ».

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

Сворачивание группировок кнопками на панели

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

Например, в отчете «Продажи по контрагентам» кнопка «1» оставит только общие итоги, кнопка «2» покажет итоги по контрагентам без детализации до документов. Отдельные группы сворачиваются и разворачиваются значками «минус» и «плюс» в левой части строк — так можно раскрыть одного контрагента, оставив остальных свернутыми.

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

Как скрыть отдельные строки и колонки

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

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

Программное сворачивание в коде

Разработчику доступны методы объекта «ТабличныйДокумент» для управления отображением. Чтобы показать только определенный уровень группировок, используется метод ПоказатьУровеньГруппировокСтрок(Уровень), где уровень нумеруется с нуля. Аналогичный метод ПоказатьУровеньГруппировокКолонок() работает для группировок по колонкам.

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

bsl
ТабДок.ПоказатьУровеньГруппировокСтрок(0); // свернуть до верхнего уровня
Область = ТабДок.Область("R10:R15");
Область.Видимость = Ложь; // скрыть строки 10–15

Важно: методы показа уровня группировок работают только если группировки реально существуют в документе — то есть отчет был сформирован с группировками. Для «плоского» табличного документа без иерархии вызов метода не даст видимого эффекта.

Как сделать, чтобы отчет открывался уже свернутым

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

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

Способы сворачивания — что выбрать

Кнопки уровней группировок

Быстро и без настроек; подходит для разового просмотра, но не запоминается между сеансами

Скрытие областей вручную

Гибко для отдельных строк и колонок; теряется при переформировании отчета

Сохраненный вариант отчета

Действует постоянно и для всех, кому доступен вариант; требует прав на изменение настроек

Программное сворачивание

Полный контроль из кода; доступно только разработчику или через внешнюю обработку

Типичные ошибки и их причины

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

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

Типичные ошибки
01
Попытка свернуть документ без группировок — кнопки уровней отсутствуют, потому что иерархии нет
02
Скрытие строк вместо настройки варианта — результат теряется при следующем формировании
03
Удаление строк вместо скрытия — данные пропадают, и отчет приходится формировать заново
04
Сворачивание до проверки итогов — при расхождениях в данных детализацию все равно придется разворачивать

Проверка результата и ограничения

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

Учтите ограничения: в табличном документе, открытом в режиме «только просмотр», скрытие областей может быть недоступно; в веб-клиенте часть команд контекстного меню отличается от тонкого клиента; свернутое состояние не сохраняется в файл MXL при обычном сохранении — документ откроется в том виде, в каком был сформирован.

Контрольные точки

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

Общий итог отчета
Норма

Совпадает с итогом до сворачивания

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

Итог изменился — проверьте, не были ли строки удалены вместо скрытия

Значки групп слева
Норма

У свернутых групп отображается «плюс», группа разворачивается

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

Значков нет — в документе нет группировок

Печатная форма
Норма

Скрытые строки и колонки не выводятся на печать

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

Скрытое печатается — проверьте, не используется ли отдельный макет для печати

Итог

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

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

Частые вопросы

Можно ли свернуть табличный документ в веб-клиенте 1С?

Да, кнопки уровней группировок и значки сворачивания групп работают в веб-клиенте так же, как в тонком. Однако контекстное меню с командами «Скрыть» и «Показать» в некоторых браузерах может быть ограничено — в этом случае используйте сворачивание через группировки.

Сохранится ли свернутый вид, если выгрузить документ в Excel?

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

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

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

Как свернуть все группы одной командой в коде?

Вызовите метод ПоказатьУровеньГруппировокСтрок(0) — документ свернется до верхнего уровня. Если нужен конкретный промежуточный уровень, передайте его номер, помня, что нумерация начинается с нуля.

Можно ли запретить пользователю разворачивать свернутые группы?

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