Отчеты и Аналитика · 12 мин
Как посчитать сумму в 1С: все рабочие способы
Как посчитать сумму в 1С: итог по колонке в таблице, сумма документов за период, функция СУММА в запросе и СКД. Пошаговые инструкции, ошибки и проверка результата.
Вопрос «как посчитать сумму в 1С» возникает в самых разных ситуациях: нужно быстро сложить числа в колонке таблицы, узнать итог по документам за период, вывести сумму в отчёте или написать запрос с группировкой. В каждом случае есть свой инструмент, и выбор зависит от того, где находятся данные и что требуется получить на выходе.
В типовых конфигурациях (1С:Бухгалтерия, 1С:Управление торговлей, 1С:ЗУП) большинство сумм уже считается автоматически — в документах, журналах и отчётах. Но когда стандартных итогов не хватает, приходится использовать встроенные приёмы: выделение ячеек с просмотром суммы, настройку группировок в отчётах, консоль запросов или вычисляемые поля в СКД.
Ниже разобраны основные способы подсчёта суммы — от простейшего, не требующего никаких настроек, до вариантов для тех, кто работает с запросами и дорабатывает отчёты. Для каждого способа указаны условия применения, ограничения и способ проверить результат.
Быстрый подсчёт суммы выделением ячеек
Самый простой способ узнать сумму чисел в таблице — выделить нужные ячейки мышью. В управляемых формах 1С при выделении диапазона числовых ячеек в табличном документе или табличной части платформа автоматически показывает сумму выделенных значений. Обычно результат отображается в нижней части окна — в строке состояния рядом с показателями «Среднее», «Количество», «Минимум», «Максимум».
Если строка с итогами не отображается, проверьте настройки: в табличном документе итоги по выделенным ячейкам можно включить через главное меню — «Таблица» → «Итоги по выделенным ячейкам» (в разных версиях платформы название пункта может отличаться). После включения при любом выделении числовых ячеек сумма появится автоматически.
Способ удобен для разовой проверки: например, сверить сумму нескольких строк накладной с итогом документа или быстро сложить значения в сформированном отчёте, не выгружая его в Excel. Учтите ограничение: суммируются только числовые ячейки, а ячейки с текстом и пустые игнорируются.
- 1Откройте таблицу, отчёт или табличную часть документа с нужными числами.
- 2Выделите мышью диапазон ячеек — отдельные строки можно выделять с зажатой клавишей Ctrl.
- 3Посмотрите сумму в строке состояния внизу окна.
- 4Если итоги не видны, включите их в меню таблицы (пункт про итоги по выделенным ячейкам).
- 5Сверьте полученное значение с контрольным итогом документа или отчёта.
Сумма в документах и табличных частях
В документах 1С (накладные, счета, акты, заказы) сумма по табличной части обычно считается автоматически: платформа складывает значения колонки «Сумма» и выводит итог под таблицей или в шапке документа. Если вы меняете количество или цену в строке, итог пересчитывается сразу — это встроенное поведение типовых конфигураций.
Если итоговая сумма не пересчитывается, чаще всего причина в том, что в строке не заполнено одно из полей, участвующих в расчёте (например, количество или цена), либо строка добавлена, но не заполнена вовсе. Проверьте, что во всех строках есть количество и цена, а в колонке «Сумма» стоят числа, а не прочерки.
Отдельный момент — сумма НДС. В типовых документах НДС считается от суммы строки по указанной ставке, а итоговый НДС выводится отдельно. Если вам нужна сумма «всего с НДС», смотрите поле «Всего» в подвале документа, а не складывайте колонки вручную — при ручном сложении легко ошибиться на округлении копеек.
Как посчитать сумму по документам за период через отчёты
Когда нужна сумма не по одному документу, а по всем документам за период — например, общая сумма реализаций за месяц или сумма поступлений от конкретного поставщика, — правильный инструмент это стандартные отчёты. В 1С:Бухгалтерии это оборотно-сальдовая ведомость, анализ счёта, карточка счёта; в торговых конфигурациях — отчёты «Продажи», «Валовая прибыль», «Ведомость по товарам».
Порядок действий типовой: откройте нужный отчёт, укажите период, при необходимости установите отбор (по контрагенту, организации, складу, номенклатуре) и нажмите «Сформировать». Итоговая сумма будет в строке «Итого» отчёта. Если нужна разбивка — например, суммы по каждому контрагенту, — добавьте группировку в настройках отчёта через кнопку «Настройки» или «Ещё» → «Изменить вариант отчёта».
Практический совет: если отчёт показывает не ту сумму, которую вы ожидаете, в первую очередь проверьте три вещи — период, отборы и то, все ли документы проведены. Непроведённые документы в большинство отчётов не попадают, и это самая частая причина «не сходится сумма».
Как проверить сумму в отчёте
Даты охватывают все нужные документы
Часть документов за пределами периода — сумма занижена
Все документы проведены (нет пометки карандаша в журнале)
Есть непроведённые документы — они не вошли в итог
Установлены только нужные отборы
Лишний отбор отсекает часть данных
Сумма совпадает с оборотом по счёту
Расхождение — ищите разницу по карточке счёта
Сумма в запросе: функция СУММА и группировка
Для тех, кто работает с консолью запросов или пишет собственные отчёты, основной инструмент — агрегатная функция СУММА в языке запросов 1С. Она складывает значения числового поля по группе и используется вместе с конструкцией СГРУППИРОВАТЬ ПО.
Типовой пример — сумма продаж по контрагентам:
ВЫБРАТЬ
Реализация.Контрагент КАК Контрагент,
СУММА(Реализация.СуммаДокумента) КАК СуммаПродаж
ИЗ
Документ.РеализацияТоваровУслуг КАК Реализация
ГДЕ
Реализация.Проведен
И Реализация.Дата МЕЖДУ &НачалоПериода И &КонецПериода
СГРУППИРОВАТЬ ПО
Реализация.Контрагент
Ключевые правила: поле, по которому считается сумма, должно быть числовым; все неагрегатные поля в выборке обязаны попасть в секцию СГРУППИРОВАТЬ ПО, иначе запрос выдаст ошибку. Если нужен общий итог без разбивки, группировку можно не указывать — СУММА сложит все строки выборки.
Для итогов по иерархии и подытогов по уровням используется конструкция ИТОГИ ПО — она добавляет в результат запроса строки с промежуточными и общими итогами, что удобно при построении древовидных отчётов.
СУММА(Реализация.СуммаДокумента) КАК СуммаПродажСумма в СКД и программный расчёт в коде
В системе компоновки данных (СКД), на которой построены большинство отчётов в управляемых приложениях, сумма настраивается без программирования: на вкладке «Ресурсы» выбирается поле и для него указывается выражение СУММА. После этого отчёт автоматически считает итоги по каждой группировке и общий итог. Если ресурс не добавлен, итогов в отчёте не будет — это частая причина вопроса «почему отчёт не считает сумму».
В программном коде на встроенном языке сумму по таблице значений или табличной части считают двумя способами. Первый — метод Итог(): СуммаВсего = ТаблицаТоваров.Итог("Сумма");. Он возвращает сумму по указанной колонке за один вызов. Второй — цикл с накоплением, когда нужно сложить значения с условием, например только по строкам с определённым признаком.
Для обращения к данным регистров без запроса существуют виртуальные таблицы оборотов и итогов: например, у регистра накопления можно получить обороты за период с суммой по измерениям. Это быстрее, чем перебор документов, и правильнее с точки зрения архитектуры учёта.
Способы посчитать сумму
Разовая проверка в любой таблице. Не сохраняет результат, не подходит для регулярной сверки.
Суммы за период с отборами и группировками. Требует, чтобы документы были проведены.
Гибкая выборка любых данных. Нужны навыки языка запросов или консоль запросов.
Настройка итогов в отчёте без кода. Работает только в отчётах на СКД.
Быстрый расчёт по таблице значений в алгоритмах. Только для разработчиков.
Типичные ошибки при подсчёте сумм
Чаще всего сумма «не сходится» не из-за ошибки платформы, а из-за особенностей данных. Непроведённые или помеченные на удаление документы не попадают в отчёты и итоги регистров — при сверке всегда начинайте с проверки статуса документов в журнале.
Вторая группа ошибок — работа с периодами и отборами. Отчёт сформирован не за тот месяц, стоит забытый отбор по организации или складу, дата документа отличается от даты, которую ожидает пользователь. Прежде чем искать ошибку в расчётах, сформируйте отчёт заново с минимальными настройками и сравните.
Третья группа — техническая: попытка просуммировать текстовое поле в запросе (результат — ошибка или NULL), отсутствие ресурса в СКД, ручной пересчёт в Excel с расхождением на округлении. Также помните, что СУММА в запросе игнорирует значения NULL: если поле может быть не заполнено, используйте конструкцию ЕСТЬNULL, иначе итог будет занижен.
Как проверить, что сумма посчитана правильно
Надёжный способ проверки — перекрёстная сверка двумя независимыми инструментами. Например, сумму продаж из отчёта «Продажи» сверьте с оборотом по счёту выручки в оборотно-сальдовой ведомости, а сумму поступлений — с оборотом по счёту товаров. Если два разных механизма дают одинаковое число, итогу можно доверять.
Если суммы разошлись, детализируйте данные до уровня документов: откройте карточку счёта или расшифруйте отчёт двойным щелчком по ячейке и найдите документ, который есть в одной выборке и отсутствует в другой. Обычно это документ с другой датой, другим складом или непроведённый документ.
При работе с собственными запросами проверяйте результат на малом объёме: сначала запрос по одному контрагенту за один день, сверка с карточкой документа, и только потом полный период. Это экономит время на поиске ошибок в логике группировок.
Как выбрать способ
Частые вопросы
Почему в отчёте сумма меньше, чем ожидается?
Наиболее вероятные причины: часть документов не проведена, в отчёте стоит лишний отбор или выбран неполный период. Проверьте журнал документов на наличие непроведённых и сбросьте все отборы, затем сформируйте отчёт заново и сравните.
Можно ли посчитать сумму в 1С без отчётов и запросов?
Да. Выделите числовые ячейки в любой таблице или табличном документе мышью — сумма появится в строке состояния внизу окна. Если итоги не показываются, включите их в настройках таблицы через главное меню.
Почему итог документа не совпадает с суммой, посчитанной в Excel?
Из-за округления: 1С округляет сумму каждой строки документа по своим правилам, а Excel считает с полной точностью и округляет иначе. Расхождение в копейках — нормальная ситуация. Для учёта используйте итог из самого документа.
Что делать, если СУММА в запросе возвращает не то значение?
Проверьте, нет ли в суммируемом поле значений NULL — они игнорируются функцией СУММА. Оберните поле в ЕСТЬNULL(Поле, 0). Также убедитесь, что поле числовое, а группировка включает все неагрегатные поля выборки.
Как вывести в отчёте итоги по группам и общий итог?
В отчётах на СКД добавьте нужное поле в ресурсы с функцией СУММА — итоги по группировкам и общий итог появятся автоматически. В запросе для многоуровневых итогов используйте конструкцию ИТОГИ ПО.
Суммируются ли помеченные на удаление документы?
Нет. Помеченные на удаление и непроведённые документы не участвуют в итогах регистров и не попадают в отчёты. Если такой документ всё же нужен в расчёте, снимите пометку и проведите его, предварительно убедившись, что данные корректны.
Что важно запомнить
Для быстрого подсчёта выделяйте ячейки и смотрите строку состояния, для сумм за период используйте стандартные отчёты с отборами, в запросах и СКД применяйте функцию СУММА. Перед сверкой проверяйте проведение документов, период и отборы, а итоги документов берите из самих документов, а не из пересчёта в Excel.