Работая с типовым отчетом «Остатки товаров на складах» в программе 1С:Управление торговлей 11 (а также в 1С:Комплексная автоматизация и 1С:ERP Управление предприятием), пользователи нередко сталкиваются с ситуацией, когда по отдельным складам в строках итогов не рассчитывается общее количество. Поле итога остается пустым, хотя детальные записи с остатками по номенклатуре заполнены корректно. Проанализируем, с чем связано такое поведение системы и как правильно настроить отчет для вывода нужных сумм.
Рассмотрим внутреннюю механику работы схемы компоновки данных (СКД), заложенную разработчиками типовых конфигураций 1С. В типовых отчетах для поля количества предусмотрена встроенная защита от некорректного суммирования разнородных единиц измерения. В выражении расчета ресурса на уровне СКД используется условие однородности физических величин:
ВЫБОР КОГДА Количество(Различные ЕдиницаИзмерения) = 1 ТОГДА Сумма(Количество) ИНАЧЕ NULL КОНЕЦ
Если на выбранном складе хранятся позиции с разными единицами измерения (например, одна номенклатура учитывается в штуках, а другая — в килограммах, литрах или метрах), СКД возвращает значение NULL, скрывая общий итог. Система считает математически некорректным складывать килограммы со штуками.
Кроме того, рассмотрим неочевидные причины проявления этого механизма:
Расположение общих итогов.Разберем по шагам наиболее быстрый и стандартный способ решения, позволяющий просуммировать физическое количество всех позиций независимо от их единиц измерения:
Вид из положения «Простой» в положение «Расширенный».После применения этой настройки СКД выполнит простое сложение числовых значений по всем строкам группировки склада, не проверяя совпадение единиц измерения.
Проанализируем ситуацию, когда пользователь не видит переключателя режима настроек. Такое поведение может быть обусловлено следующими факторами:
Добавление и изменение вариантов отчетов. Для решения проблемы необходимо обратиться к системному администратору для корректировки прав.Если для складского учета критически важно сохранить корректность единиц и видеть итоги раздельно по каждой величине (отдельно штуки, отдельно килограммы), скорректируем структуру группировок отчета:
ЕдиницаИзмерения (или Номенклатура.ЕдиницаИзмерения).Номенклатура. Получится цепочка: Склад → Единица измерения → Номенклатура.В таком виде по каждому складу сформируются промежуточные итоги: программа рассчитает суммарный остаток отдельно по всем штучным товарам и отдельно по весовым или метражным.
Посмотрим на еще одну возможность типового функционала. В настройках отчета доступно переключение параметра представления единиц: вместо варианта «В единицах хранения» можно выбрать «В единицах для отчетов».
Если в карточках номенклатуры предварительно заданы коэффициенты пересчета к единой базовой единице для отчетов, программа автоматически пересчитает количество разнородных товаров к общему знаменателю и корректно выведет итоговую сумму по складу.
Если требуется быстро получить суммарный количественный срез без изменения вариантов типового отчета, воспользуемся стандартным инструментом «Универсальный отчет»:
Регистр накопления.Товары на складах, а тип таблицы — Остатки.Склад, а в ресурсах выберем поле ВНаличииОстаток.Поскольку Универсальный отчет рассчитывает итоги напрямую стандартными функциями СКД без формулы отсечения разнородных единиц, итоговые суммы по складам рассчитаются автоматически.