Отчеты и Аналитика · 11 мин
Группировки в отчетах 1С: что это и как с ними работать
Что такое группировки в отчетах 1С, зачем они нужны и как их настраивать в СКД и конструкторе отчетов. Примеры, ошибки и ответы на вопросы.
Группировка в отчетах 1С — это механизм, который разбивает строки отчета на логические разделы по значению какого-либо поля: по контрагентам, складам, номенклатуре, периодам. Без группировок отчет выводится «плоским» списком строк, и понять, сколько продано каждому клиенту или по каждому месяцу, практически невозможно. С группировками одни и те же данные превращаются в структурированную таблицу с итогами по каждому разделу.
Практически все типовые отчеты 1С (продажи, взаиморасчеты, оборотно-сальдовая ведомость, анализ склада) уже содержат предустановленные группировки. Но настоящая гибкость появляется тогда, когда пользователь или разработчик меняет состав и порядок группировок под свою задачу: добавляет уровень «Менеджер» внутрь «Контрагент», убирает лишнюю детализацию или строит отчет только по месяцам без детализации до документов.
Понимание того, как работают группировки, нужно двум категориям пользователей. Аналитикам и бухгалтерам — чтобы настраивать типовые отчеты без обращения к программисту. Разработчикам — чтобы проектировать отчеты на системе компоновки данных (СКД), где группировки являются одним из базовых элементов структуры.
Что такое группировка и как она устроена
Технически группировка — это указание системе: «собери все строки, у которых совпадает значение этого поля, в один раздел, выведи заголовок раздела и посчитай по нему итоги». Если в запросе выбираются продажи с полями «Контрагент» и «Сумма», то группировка по контрагенту даст по одному разделу на каждого клиента с суммой его покупок.
Группировки бывают многоуровневыми. Внутри группировки «Контрагент» можно разместить вложенную группировку «Договор», а внутри нее — детальные записи по документам. Отчет станет иерархическим: сначала клиент, под ним его договоры, под каждым договором — конкретные реализации. Итоги при этом считаются на каждом уровне: по договору, по контрагенту и по отчету в целом.
Кроме обычных группировок в СКД существуют специальные виды: группировка «Иерархия» (выводит элементы справочника вместе с его папками) и группировка «Только иерархия» (только папки с итогами). Для справочников с папками, например «Номенклатура», это позволяет увидеть суммы по товарным группам.
Где задаются группировки в типовых отчетах
В отчетах, построенных на СКД (это большинство отчетов в конфигурациях «Управление торговлей», «ERP», «Комплексная автоматизация», частично «Бухгалтерия»), группировки настраиваются через кнопку «Настройки» — «Расширенные настройки» — закладка «Структура» или «Группировка». Там отображается текущая иерархия разделов отчета, и ее можно менять: добавлять новые уровни, удалять, менять порядок перетаскиванием.
Чтобы добавить группировку, в структуре отчета выбирают уровень, внутрь которого нужно поместить новый раздел, нажимают «Добавить» — «Новая группировка» и указывают поле. Например, в отчете «Продажи» можно добавить группировку по полю «Менеджер» внутрь группировки «Организация» — и отчет покажет, сколько продал каждый менеджер в разрезе каждой организации.
В отчетах «1С:Бухгалтерии» (оборотно-сальдовая ведомость, анализ счета, карточка счета) механика немного другая: группировки задаются на закладке «Группировка» в виде списка «По субконто». Порядок строк в этом списке определяет вложенность: первая строка — верхний уровень, вторая — вложенная в нее. Там же включается детализация по периодам (по дням, месяцам, кварталам).
- 1Откройте отчет и нажмите «Настройки» — «Расширенные настройки»
- 2Перейдите на закладку «Структура» (или «Группировка»)
- 3Выделите уровень, внутрь которого нужно добавить раздел
- 4Нажмите «Добавить» — «Новая группировка» и выберите поле (например, «Менеджер»)
- 5Сформируйте отчет и проверьте, что появились разделы и итоги по новому полю
- 6Сохраните настройку как вариант отчета, чтобы не настраивать повторно
Группировки в конструкторе СКД для разработчика
При создании собственного отчета группировки задаются в конструкторе схемы компоновки данных на закладке «Настройки». В левой части находится дерево структуры: «Отчет» — «Группировка» — вложенные группировки. Для каждой группировки указывается поле группировки, а в нижней части окна — выбранные поля, сортировка и отбор, действующие именно на этом уровне.
Важный момент: поля, по которым строятся группировки, должны присутствовать в наборе данных запроса. Если в запросе не выбрано поле «Менеджер», сгруппировать по нему не получится — поле просто не появится в списке доступных. Поэтому сначала проектируется запрос со всеми нужными измерениями, а уже потом строится структура.
Итоги по группировкам считаются по ресурсам — числовым полям, настроенным на закладке «Ресурсы» (сумма, количество). Для каждого ресурса указывается выражение агрегирования: Сумма(), Максимум(), Среднее() и т.д. Если поле не добавлено в ресурсы, итог по нему в группировке выведен не будет, даже если в детальных записях значения есть.
Группировка по периодам и иерархии
Частый сценарий — анализ во времени. Для этого используется группировка по полю «Период» с указанием типа: по дням, неделям, месяцам, кварталам. В СКД поле периода обычно доступно с суффиксами: «ПериодМесяц», «ПериодДень» и т.п. Такой отчет показывает динамику показателя — например, продажи по месяцам внутри каждого года.
Группировка «Иерархия» нужна для справочников с папками. Если сгруппировать продажи по номенклатуре обычной группировкой, итоги будут только по конкретным товарам. Если выбрать тип группировки «Иерархия», отчет покажет итоги по папкам (группам товаров) с детализацией внутри. Это удобно для анализа по товарным категориям без ручного сведения.
Комбинация периода и иерархии дает мощные отчеты: например, «Продажи по группам товаров по месяцам». Но каждый дополнительный уровень группировки увеличивает объем вычислений и размер результата — на больших базах такой отчет может формироваться заметно дольше.
Таблицы и диаграммы: альтернатива вложенным группировкам
Когда нужно показать два измерения одновременно (например, товары по строкам и месяцы по колонкам), вложенные группировки неудобны. В СКД для этого есть элемент структуры «Таблица»: в строках таблицы размещается одна группировка, в колонках — другая. Получается сводная таблица, привычная пользователям Excel.
Элемент «Диаграмма» работает похожим образом: группировка в точках и группировка в сериях. Это позволяет строить графики прямо в отчете без выгрузки во внешние инструменты.
Сравнение вариантов структуры
Подходят для детального анализа с итогами на каждом уровне. Ограничение: при двух измерениях отчет становится длинным и трудночитаемым.
Подходит для сравнения двух измерений: товары × месяцы, склады × контрагенты. Ограничение: сложнее вывести детальные записи внутри ячеек.
Подходит для визуальной оценки долей и динамики. Ограничение: не показывает точные значения без дополнительной таблицы.
Частые ошибки при работе с группировками
Самая распространенная ошибка — слишком глубокая вложенность. Отчет с пятью-шестью уровнями группировок формируется долго, а читать его практически невозможно. Практическое правило: для рабочего отчета достаточно двух-трех уровней, более глубокую детализацию лучше выносить в отдельный отчет или в расшифровку.
Вторая ошибка — группировка по полю, которое не заполнено у части данных. Например, группировка по менеджеру, когда у старых документов менеджер не указан: появляется раздел с пустым заголовком, и итоги в него «проваливаются». Перед добавлением группировки стоит проверить заполненность поля в данных.
Третья ошибка — ожидание итогов по полю, которое не является ресурсом. Пользователь добавляет группировку, формирует отчет и видит пустые итоги. Причина — числовое поле не добавлено в ресурсы СКД или в выбранные поля на уровне группировки. Проверяется это в настройках структуры.
Как проверить правильность настроенных группировок
Первый контроль — сходимость итогов. Итог по верхней группировке должен равняться сумме итогов вложенных разделов, а общий итог отчета — сумме по всем верхним разделам. Если суммы не сходятся, чаще всего в отборе на разных уровнях стоят разные условия или часть данных попала в раздел с пустым значением группировки.
Второй контроль — сверка с независимым источником. Например, общий итог отчета по продажам сверяют с оборотами по счету выручки или с типовым отчетом за тот же период. Совпадение общего итога при правильной структуре разделов — признак корректной настройки.
Третий контроль — время формирования. Если после добавления группировки отчет стал формироваться в разы дольше, стоит упростить структуру: убрать лишний уровень, заменить вложенную группировку таблицей или ограничить период. На больших базах это критично для совместной работы пользователей.
Как проверить результат
Итог верхнего раздела равен сумме итогов вложенных разделов
Суммы не сходятся или есть раздел с пустым заголовком
Совпадает с контрольным отчетом или оборотами за тот же период
Расхождение с независимым источником данных
Отчет формируется за приемлемое для пользователей время
После добавления уровня время выросло в разы
Ответы на частые вопросы
Чем группировка отличается от отбора?
Отбор уменьшает объем данных: отчет показывает только строки, удовлетворяющие условию, например продажи одного контрагента. Группировка не отбрасывает данные, а структурирует их: все контрагенты остаются в отчете, но каждый выводится отдельным разделом со своими итогами. Отбор и группировка дополняют друг друга.
Можно ли сгруппировать отчет сразу по двум полям на одном уровне?
В одной группировке можно указать только одно поле. Чтобы получить комбинацию двух измерений, используют либо вложенную группировку (одно поле внутри другого), либо элемент «Таблица», где одно поле размещается в строках, а второе — в колонках.
Как сохранить настроенные группировки, чтобы не настраивать заново?
После настройки структуры нажмите «Сохранить настройки» или выберите «Сохранить вариант отчета» под понятным именем, например «Продажи по менеджерам». Вариант будет доступен в списке вариантов отчета, и при необходимости его можно сделать доступным другим пользователям.
Почему в отчете появился раздел с пустым названием?
Это значит, что у части записей поле группировки не заполнено — например, в документах не указан менеджер или склад. Найдите такие документы через детальные записи этого раздела и заполните поле, либо добавьте отбор, исключающий пустые значения, если они не нужны в анализе.
Влияет ли количество группировок на скорость отчета?
Да. Каждый уровень группировки увеличивает объем обрабатываемых данных и число вычисляемых итогов. На крупных базах отчет с четырьмя-пятью уровнями может формироваться заметно дольше. Оптимизация — сокращение уровней, использование таблицы вместо вложенности и ограничение периода отчета.
Можно ли вывести итоги только по группировкам, без детальных записей?
Да. Достаточно удалить из структуры элемент «Детальные записи» либо снять флажки с детальных полей в выбранных полях группировки. Отчет покажет только разделы с итогами — так обычно оформляют управленческие сводки для руководства.
Что важно запомнить
Группировка разбивает данные отчета на разделы по значению поля и считает итоги по каждому разделу. Настраивается через «Настройки» — «Структура» в типовых отчетах или в конструкторе СКД. Держите не более двух-трех уровней вложенности, проверяйте сходимость итогов и сохраняйте удачные настройки как варианты отчета.