Məzmuna keç
Tez Base

СКД: почему итог не равен сумме строк и как это проверить

· Dərc edilib:

Запросы и скорость

Итог в СКД может вычисляться в контексте группы, поэтому его расхождение с суммой видимых строк не всегда означает ошибку сложения. Сначала определите бизнес-правило: итог должен складывать результаты строк или заново вычислять показатель по группе. Для процентов и условных отклонений эти варианты часто расходятся.

Запишите ожидаемый результат вручную

Сделайте маленький набор с двумя товарами и двумя периодами. Например, в учебном наборе количество первого товара меняется с 10 до 14, второго со 100 до 100. При правиле “сложить абсолютные изменения по товарам” ожидается 4. Эти числа нужны только для проверки алгоритма, это не показатели проекта.

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

Разделите вложенное выражение

Если ресурс содержит вычисление по группировке, временно выведите промежуточный результат. Для массива посмотрите элементы до внешнего суммирования. Сравните результат на строке товара, на категории и на пересечении с колонкой периода.

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

Проверьте неполный набор сочетаний

Реальные данные редко содержат каждую пару “товар и год”. При сравнении с предыдущим периодом пропуски меняют результат соединения и смещения. Подготовьте случаи с новым товаром, исчезнувшим товаром и несколькими категориями.

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

Когда вынести расчёт из ресурса

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

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

Приёмка исправления

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

Успешное формирование отчёта проверяет только возможность выполнения. Приёмка требует совпадения с заранее рассчитанным результатом. При доработке отчётов 1С такой набор остаётся рядом с реализацией и используется после обновлений.

Bunu sizin əvəzinizə həll edə bilərəm

У вас бюджет и идея - платформа для трейдинга, учётная система под свою нишу, сервис, которого ещё ни у кого нет. Мы разбираем задачу, готовим ТЗ со сметой и собираем команду под стек, а не подгоняем идею под то, что уже умеем.

Qiyməti
450 000 - 600 000 ₸разбор идеи и ТЗ со сметой, без налогов; сама разработка - по смете отдельным договором после ТЗ

INFOSTART TECH EVENT 2026: конференция для 1с-специалистов. если собираетесь, регистрируйтесь по нашей ссылке. Регистрация →

Bunu da oxuyun

Защита тиражной обработки 1С от копирования: три уровня и где у каждого потолок

Файл .epf копируется мышкой, и договор это не останавливает. Защиту обычно начинают с проверки ИНН в коде - и зря: она снимается за минуту, потому что логика лежит рядом открытым текстом. Разложили защиту на три уровня по убыванию дыр: от бесполезной проверки ИНН через шифрование тела процедуры под ИНН покупателя до настоящей лицензии на асимметричной криптографии. По каждому - что он реально закрывает, чего не закрывает и когда его стоит брать.

Доработка формы 1С через нейросеть: что дать модели на вход и что проверить в её ответе

Form.xml даёт модели точные имена, но молчит о том, что форма достраивает при создании и что пользователь видит в работе. На типовой УТ для Казахстана 127 полей формы номенклатуры видимы по XML и скрыты в работе, а условное оформление строится кодом в 400 модулях форм. Разбираем три источника для модели, перехват формы с четырьмя ошибками и проверку ответа за пять минут.

Регулярки, пауза, архивы и хеш в 1С: какой самописный код уже можно заменить штатным и где это не сработает

В 8.3.22-8.3.27 платформа научилась регулярным выражениям, паузе, распаковке RAR и 7z, буферу обмена и WebSocket. Самописный код под эти задачи живёт в каждой конфигурации, но заменить его на месте получается не всегда. Справочник по 20 заменам с примерами было-стало, проверка, где исполняется строка, и цифры по двум типовым: УТ для Казахстана и Бухгалтерии предприятия 3.0.