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

Учет и Финансы · 9 мин

Как считать проценты в 1С: практическое руководство

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

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

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

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

Какие процентные расчёты уже встроены в типовые конфигурации

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

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

Скидки и наценки: настройка расчёта в продажах

В конфигурациях с торговым учётом (Управление торговлей, ERP, Комплексная автоматизация, Розница) скидки настраиваются в разделе маркетинга или продаж. Типовой порядок: создать вид скидки, указать процент или формулу, задать условия применения (сегмент товаров, контрагентов, сумма чека, период действия), назначить скидку на склад или группу карт.

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

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

Ручная скидка в документе

Если нужна разовая скидка без настройки механизма, в табличной части документа реализации обычно доступны колонки «% ручной скидки» и «Сумма ручной скидки». Изменение процента пересчитывает сумму автоматически. Учтите, что ручные скидки могут быть ограничены правами пользователя и предельным процентом в настройках.

НДС: как 1С считает налог по ставке

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

При выделении НДС из суммы используется расчётная ставка: например, при ставке 20% налог вычисляется как Сумма × 20 / 120, а не Сумма × 0,2. Это самая частая ошибка при ручной проверке: пользователь умножает на 0,2 и получает завышенное значение. Для ставки 10% формула — Сумма × 10 / 110.

Типичные ошибки с НДС
01
Выделение НДС умножением суммы на 0,2 вместо формулы Сумма × 20/120 — налог завышается
02
Разные ставки в карточке номенклатуры и в документе — сумма НДС расходится с ожиданием
03
Округление НДС по строкам вместо итогового — копеечные расхождения с первичкой контрагента

Проценты по кредитам, займам и пени

Типовой автоматический расчёт процентов по кредитам есть не во всех конфигурациях. В 1С:Бухгалтерии начисление процентов чаще всего оформляется ручной операцией: сумму процентов за период считают по формуле Остаток долга × Ставка / 365 (или 366) × Число дней и отражают проводкой Дт 91.02 — Кт 66 (67) для полученных займов или Дт 76 — Кт 91.01 для выданных.

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

Проценты в отчётах: СКД и произвольные формулы

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

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

Проверка результата в отчёте

После добавления формулы сверьте отчёт с ручным расчётом на одной-двух строках. Типичная проблема — деление на ноль, когда плановое значение пустое: отчёт показывает ошибку или пустоту. В формуле СКД это обрабатывается конструкцией ВЫБОР КОГДА План = 0 ТОГДА 0 ИНАЧЕ ... КОНЕЦ.

Формулы в запросах и встроенном языке

Для разработчиков и продвинутых пользователей проценты считаются в запросе или коде. В языке запросов доступна обычная арифметика: ВЫРАЗИТЬ(Сумма * Ставка / 100 КАК ЧИСЛО(15,2)). Важно явно приводить тип через ВЫРАЗИТЬ, иначе результат целочисленного деления может потерять дробную часть.

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

bsl
// Процент от суммы с округлением до копеек
СуммаСкидки = Окр(СуммаДокумента <em> ПроцентСкидки / 100, 2, РежимОкругления.Окр15как20);
// Выделение НДС 20% из суммы
СуммаНДС = Окр(СуммаВключаяНДС </em> 20 / 120, 2);

Типичные ошибки и как их проверить

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

Универсальный способ проверки — взять одну строку с круглыми числами (например, сумма 1000, ставка 20%) и просчитать её вручную и в системе. Если результаты совпали на простом примере, но расходятся на реальном документе — ищите проблему в округлении или в составе базы (включены ли скидки, доставка, возвратная тара).

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

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

Сумма НДС в документе
Норма

Совпадает с расчётом Сумма × Ставка / (100 + Ставка) при «НДС в том числе»

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

Расходится на фиксированный процент — неверная формула или ставка

Итоговая скидка по документу
Норма

Равна сумме скидок по строкам с точностью до копеек

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

Копеечные расхождения накапливаются — проблема округления

Процент в отчёте
Норма

Совпадает с ручным расчётом на контрольной строке

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

Пусто или ошибка — деление на ноль в формуле

FAQ

Как быстро посчитать процент от суммы без документа?

Используйте встроенный калькулятор (в большинстве конфигураций доступен через меню сервисов) или любое поле ввода числа: многие числовые поля 1С понимают арифметические выражения — можно ввести 15000*13/100 и нажать Enter, система посчитает результат.

Почему НДС в моём расчёте не совпадает с 1С на копейки?

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

Можно ли задать скидку формулой, а не фиксированным процентом?

Да, в конфигурациях с расширенным механизмом скидок (Управление торговлей, ERP) доступен способ предоставления «Произвольный запрос» или расчёт по формуле с параметрами. Это позволяет строить прогрессивные шкалы и зависимости от суммы чека.

Как посчитать процент выполнения плана продаж?

В отчётах по планам продаж добавьте пользовательское поле с формулой Факт / План × 100. Если план равен нулю, добавьте проверку деления на ноль. В типовых отчётах «Анализ выполнения планов» такой показатель обычно уже есть.

Опасно ли менять формулы расчёта в типовой конфигурации?

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

Итог

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

Сначала ищите штатный механизм: скидки, НДС и план-фактные проценты в типовых 1С уже автоматизированы. Для нестандартных задач используйте пользовательские поля СКД и формулы с явным приведением типов и округлением. Проверяйте любой расчёт на контрольном примере с круглыми числами, а НДС выделяйте по формуле Сумма × Ставка / (100 + Ставка).