Почему не сходятся остатки в отчетах «Ведомость по товарам на складах» и «Остатки и доступность товаров» в 1С:УТ 11.5 и как это исправить?

Программист 1С v8.3 (Управляемые формы) Управленческий учет Торговля и дистрибуция
← На главную

После обновления конфигурации 1С:Управление торговлей (редакция 11.5) на актуальные релизы (особенно ветки 11.5.12 и выше, включая 11.5.22.145) многие пользователи сталкиваются с неприятной ситуацией: отчет «Ведомость по товарам на складах» показывает корректные остатки, а отчет «Остатки и доступность товаров» выводит совершенно другие цифры, часто уходя в минус или необоснованно резервируя товар. Проанализируем, почему это происходит и как привести данные в порядок.

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

Прежде всего, выясним причину такого поведения программы. В последних версиях УТ 11.5 произошли серьезные изменения в подсистеме управления запасами. Теперь отчеты строятся по разным источникам данных:

  1. «Ведомость по товарам на складах» обращается к регистру накопления (РН) ТоварыНаСкладах. Это первичный, «физический» остаток. Данные в него попадают напрямую из документов поступления, реализации и перемещения. Если здесь все верно, значит, первичные документы проведены правильно.
  2. «Остатки и доступность товаров» использует сложную связку из регистра сведений (РС) РаспределениеЗапасов и регистра накопления (РН) ЗапасыИПотребности. Эти регистры являются расчетными (вторичными). Иногда после обновлений страдает Заполнение регистра "Запасы и потребности", и система теряет данные о том, сколько товара свободно, сколько в резерве по заказам, а сколько ожидается к поступлению. Чтобы детально разобраться в цифрах, можно проанализировать Движения товаров с резервами (СКД по двум регистрам накопления, нарастающим итогом).

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

Шаг 1: Диагностика с помощью скрытого отчета

Для начала нам нужно понять масштаб проблемы. В системе существует малозаметный, но крайне эффективный инструмент — отчет «Контроль распределения запасов». Рассмотрим, как его найти:

Поскольку его часто нет в основном интерфейсе, воспользуемся поиском или функцией «Все функции» (Функции для технического специалиста). Этот отчет наглядно сопоставляет данные из ТоварыНаСкладах и РаспределениеЗапасов. Дополнительно для поиска ошибок, особенно при ордерной схеме, рекомендуется выполнить Сравнение товаров на складах и товаров организаций для УТ 11.5, КА 2.5, ЕРП 2.5 - отчет для поиска ошибок в учете (поможет инструмент поиска расхождений между остатками и доступностью в УТ 11.5), а чтобы увидеть полную картину по обеспечению, сформируйте Анализ продаж, остатков, резервов и доступности, наличия и обеспечения в ценах – УТ 11, КА 2, ЕРП 2. Проанализируем показатели: если вы видите строки с расхождениями, значит, расчетные механизмы распределения запасов «потеряли» связь с реальностью.

Шаг 2: Использование штатной обработки исправления

Разработчики 1С предусмотрели специальный инструмент для восстановления целостности этих данных. Попробуем выполнить следующие действия:

  1. Перейдем в раздел НСИ и администрирование — Обслуживание — Корректировка данных.
  2. Найдем и запустим обработку ИсправлениеОшибокВРегистреСведенийРаспределениеЗапасов.
  3. Проанализируем предложенные исправления. Если таблица не пуста, нажмем кнопку исправления.

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

Шаг 3: Настройка регламентного задания

Проверим работу автоматических механизмов. За расчет доступности отвечает регламентное задание «Исправление ошибок в распределении запасов». Выясним его статус:

Зайдем в Консоль регламентных заданий. Убедимся, что задание включено и выполняется без ошибок. В некоторых случаях, особенно при больших объемах данных (например, 7 магазинов по 1000+ наименований), стандартный интервал выполнения может быть недостаточным. Рассмотрим возможность настройки расписания на более частое выполнение или, наоборот, запуск в часы минимальной нагрузки на сервер.

Шаг 4: Глубокая очистка и пересчет регистра «Запасы и потребности»

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


// Пример логики для принудительного обновления распределения
Менеджер = РегистрыСведений.РаспределениеЗапасов.СоздатьМенеджерЗаписи();
// В некоторых случаях требуется полная очистка перед пересчетом
// (ВНИМАНИЕ: выполнять только на копии базы!)
// РегистрыСведений.РаспределениеЗапасов.Очистить(); 

// Вызов штатной процедуры пересчета
РаспределениеЗапасов.ОбновитьРаспределениеЗапасов();

Посмотрим на ситуацию со стороны пользователей: если вы не программист, можно попробовать групповое перепроведение документов за период, в котором возникли расхождения. Однако перед этим полезно выполнить Исправление ключей аналитики учета номенклатуры и видов запасов + перепроведение документов (удобно через обработку исправления ключей аналитики и видов запасов) или запустить Автоматическое исправление видов запасов в документах 1С по данным регистров остатков, чтобы устранить проблемы в аналитике. Перепроведение документов Заказ клиента, Реализация товаров и услуг и Приобретение товаров и услуг заставляет систему заново сформировать движения в регистрах накопления и инициирует цепочку пересчета доступности.

Шаг 5: Проверка настроек склада

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

Подведем итоги

Для исправления расхождений в УТ 11.5 рекомендуем придерживаться следующего алгоритма:

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

← На главную