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

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

Как рассчитать итоги в 1С

Как рассчитать итоги в 1С: группировки в отчётах СКД, итоги в запросах, пересчёт итогов регистров накопления и бухгалтерии, типовые ошибки и проверка результата.

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

Самая частая ситуация — пользователю нужно увидеть сумму по документам, остаткам или продажам, не выгружая данные в Excel. Для этого в типовых конфигурациях (Бухгалтерия, Управление торговлей, ERP) есть отчёты на системе компоновки данных, где итоги считаются автоматически, а пользователь управляет только группировками и отборами. Вторая ситуация — разработчик или продвинутый пользователь строит запрос с конструкцией «ИТОГИ ПО». Третья — административная: пересчёт итогов регистров после сбоев, отключения электричества или массовой загрузки данных.

Ниже разобраны все три сценария с конкретными шагами, способами проверки результата и типичными ошибками.

Как посчитать итоги в типовом отчёте без программирования

Большинство отчётов в типовых конфигурациях построены на системе компоновки данных (СКД). Это значит, что итоги по числовым полям — сумма, количество, остаток — рассчитываются автоматически при формировании отчёта. Пользователю нужно только правильно настроить структуру: какие группировки выводить и по каким полям суммировать.

Откройте нужный отчёт, например «Оборотно-сальдовая ведомость» в Бухгалтерии или «Продажи» в Управлении торговлей. Нажмите «Настройки» (или «Показать настройки»). На вкладке «Группировка» добавьте разрезы, по которым хотите видеть итоги: контрагент, номенклатура, склад, период. На вкладке «Показатели» или «Поля» отметьте числовые ресурсы — сумму, количество. После нажатия «Сформировать» отчёт покажет итоги по каждой группировке и общий итог.

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

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

Быстрые суммы без отчёта: итоги в списках и табличных частях

Не всегда нужен полноценный отчёт. Во многих списках документов и табличных частях можно выделить несколько строк и увидеть сумму по числовой колонке в строке состояния или через команду «Вывести список». В табличной части документа итог по колонке «Сумма» обычно отображается автоматически в подвале таблицы.

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

Итоги в запросах: агрегатные функции и конструкция «ИТОГИ ПО»

Если вы работаете в консоли запросов или пишете код, итоги рассчитываются агрегатными функциями: СУММА, КОЛИЧЕСТВО, МАКСИМУМ, МИНИМУМ, СРЕДНЕЕ. Простейший запрос по продажам выглядит так: выбрать номенклатуру и сумму оборота, сгруппировать по номенклатуре и применить СУММА к полю оборота.

Конструкция «ИТОГИ ПО» добавляет в результат запроса строки с промежуточными итогами по указанным измерениям. Например, «ИТОГИ СУММА(СуммаОборот) ПО Организация, Период МЕСЯЦ» вернёт детальные записи плюс итоговые строки по каждой организации и каждому месяцу. Для получения только общего итога используется «ИТОГИ ПО ОБЩИЕ».

bsl
ВЫБРАТЬ
	Продажи.Номенклатура КАК Номенклатура,
	СУММА(Продажи.СуммаОборот) КАК СуммаОборот
ИЗ
	РегистрНакопления.Продажи.Обороты(&НачалоПериода, &КонецПериода, , ) КАК Продажи
СГРУППИРОВАТЬ ПО
	Продажи.Номенклатура
ИТОГИ
	СУММА(СуммаОборот)
ПО
	ОБЩИЕ

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

Расчёт итогов в СКД: ресурсы и выражения

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

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

Типичные ошибки в отчётах и запросах
01
Поле суммы не добавлено в ресурсы СКД — колонка есть, а итогов по ней нет
02
В запросе нет группировки, но применена агрегатная функция к части полей — ошибка выполнения
03
Итоги считаются по виртуальной таблице без параметров периода — долгое выполнение и блокировки
04
Обход результата запроса без указания типа обхода — итоговые строки попадают в детальные данные
05
Сравнение итогов отчёта с разными отборами — пользователи видят «разные суммы» из-за разных настроек, а не из-за ошибки в данных

Пересчёт итогов регистров: когда остатки «врут»

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

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

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

Проверка результата: как убедиться, что итоги верны

Базовая проверка — перекрёстная сверка двух независимых отчётов. Например, итог по «Оборотно-сальдовой ведомости» по счёту 41 должен совпадать с итогом отчёта «Остатки товаров на складах» в денежном выражении при одинаковых отборах. В торговле сумму продаж по отчёту «Продажи» сверяют с выручкой по оборотам счёта 90.01.

Для запросов проверка проще: выполните запрос с «ИТОГИ ПО ОБЩИЕ» и сравните общий итог с суммой итогов по группировкам верхнего уровня — они обязаны совпадать. Если не совпадают, ищите записи с пустыми значениями измерений: они могут не попадать ни в одну группировку при определённых настройках.

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

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

Общий итог против суммы итогов по группам
Норма

Значения совпадают до копейки

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

Расхождение — есть записи с пустыми измерениями или ошибка в выражении ресурса

Остаток на конец периода против остатка на начало следующего
Норма

Значения равны

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

Расхождение — требуется пересчёт итогов регистра

Итоги двух независимых отчётов по одним данным
Норма

Суммы совпадают при одинаковых отборах и периоде

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

Разные суммы — проверьте настройки отборов в обоих отчётах

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

Почему в отчёте нет колонки с итогом, хотя сумма выведена?

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

Чем «ИТОГИ ПО» отличается от «СГРУППИРОВАТЬ ПО»?

«СГРУППИРОВАТЬ ПО» сворачивает результат: вместо детальных строк остаются только строки групп с агрегатами. «ИТОГИ ПО» сохраняет детальные записи и добавляет к ним итоговые строки по указанным разрезам. Для отчёта с детализацией и подытогами нужен второй вариант.

Как посчитать нарастающий итог в отчёте СКД?

Используйте функцию языка выражений СКД «ВычислитьВыражение» с параметром типа обхода и указанием начала/конца диапазона от первой записи до текущей. В простых случаях проще построить запрос с итогами по периодам и рассчитать накопление в коде при выводе.

Опасен ли пересчёт итогов для рабочей базы?

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

Почему итоги двух одинаковых отчётов у разных пользователей различаются?

Чаще всего причина в разных настройках отборов, периода или в ограничении доступа на уровне записей (RLS): пользователь с ограниченными правами видит только часть данных, и его итоги закономерно меньше. Сравнивайте отчёты с идентичными настройками под одной учётной записью.

Итог

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

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