Как исправить расхождения остатков и доступности товаров при переходе с 1С:УТ 11.4 на УТ 11.5

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

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

Анализируем причины: архитектурные изменения в УТ 11.5

Прежде всего, давайте выясним причину сбоя. В редакции 11.5 разработчики фирмы «1С» кардинально переработали механизм распределения запасов. Если в версии 11.4 данные о доступности рассчитывались динамически или по более простым регистрам, то в 11.5 ключевую роль играет регистр накопления РаспределениеЗапасов и его составляющая РаспределениеЗапасовДвижения. Рассмотрим основные факторы, влияющие на сбои:

  1. Фоновое распределение: В новой редакции расчет доступности может выполняться в фоновом режиме. Если фоновые задания не завершены или отработали с ошибкой, отчеты по остаткам будут показывать неактуальную информацию.
  2. Изменение логики резервирования: Переход на новые механизмы (например, отказ от «мягких» резервов в пользу более жесткой структуры) требует полной перепроверки документов, созданных в старой версии.
  3. Ошибки ведения базы: Часто проблема кроется не в самой программе, а в накопленных ошибках за прошлые периоды, которые «всплыли» после реструктуризации таблиц.

Проблема «фантомных» движений и группового изменения объектов

Проанализируем ситуацию, когда заказы покупателей были сняты с проведения, но продолжают влиять на остатки. Одной из главных ошибок является использование стандартной обработки «Групповое изменение объектов» для массового снятия документов с проведения. Разберем по шагам, почему это опасно:

Когда мы снимаем документ с проведения штатно (из формы документа), программа запускает программный код в модуле объекта, который очищает все связанные регистры. При использовании «Группового изменения объектов» пользователь часто меняет реквизит Проведен напрямую в базе данных. В этом случае:

Пошаговое решение по восстановлению корректных остатков

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

Шаг 1: Идентификация проблемных документов

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

Шаг 2: Принудительная очистка «битых» записей

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

Для исправления ситуации выполним следующие действия:

  1. Найдем период, в котором возникли «кривые» заказы.
  2. Если заказов немного и они старые, попробуем их пометить на удаление и удалить через стандартный механизм «Удаление помеченных объектов».
  3. Если заказы нужны для истории, попробуем их заново провести и снова корректно отменить проведение, но уже штатными средствами (не групповой обработкой).

Шаг 3: Технологические регламентные операции

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


// В режиме «Конфигуратор» выберите пункт «Администрирование» — «Тестирование и исправление»
// Установите флаги:
// 1. Реиндексация таблиц информационной базы
// 2. Пересчет итогов
// 3. Сжатие таблиц информационной базы
// 4. Проверка логической целостности

Обратите внимание: пересчет итогов является критически важным для регистров накопления, так как именно в таблицах итогов хранятся значения, которые система выдает в отчеты «на лету» без полного сканирования всех документов.

Как избежать проблем при будущих обновлениях

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

Заключение

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

← На главную