Почему в 1С:УТ 11.5 возникает ошибка «Недостаточно свободного остатка», если товар есть на складе?

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

Одной из самых частых и неприятных проблем в современных версиях 1С:Управление торговлей (начиная с 11.5), а также в 1С:ERP 2.5 и 1С:КА 2.5, является ситуация, когда отчет Ведомость по товарам на складах радостно показывает ID 2617080 ИСХОДНЫЙ: что в версии 11.5 кардинально изменился ЗАМЕНА: что в версии 11.5 кардинально изменился ID 2643078 ИСХОДНЫЙ: на регистр накопления ТоварыНаСкладах. ЗАМЕНА: на регистр накопления ТоварыНаСкладах. ID 2670081 ИСХОДНЫЙ: а в отчете Остатки и доступность товаров склад ЗАМЕНА: а в отчете Остатки и доступность товаров склад ID 1442020 ИСХОДНЫЙ: что физически товар на полке лежит ЗАМЕНА: что физически товар на полке лежит ID 2635086 ИСХОДНЫЙ: (запись в ТоварыНаСкладах есть) ЗАМЕНА: (запись в ТоварыНаСкладах есть) ID 2605473 ИСХОДНЫЙ: логически он либо заблокирован резервом ЗАМЕНА: логически он либо заблокирован резервом ID 2628935 ИСХОДНЫЙ: алгоритм контроля при проведении документов отгрузки. ЗАМЕНА: алгоритм контроля при проведении документов отгрузки. ID 2657859 ИСХОДНЫЙ: найдем документ Корректировка регистров. ЗАМЕНА: найдем документ Корректировка регистров. ID 2619179 ИСХОДНЫЙ: к дублированию или новым расхождениям. ЗАМЕНА: к дублированию или новым расхождениям. наличие товара, но при попытке его отгрузить или переместить система выдает ошибку: «Для отгрузки/резервирования необособленного товара на складе недостаточно свободного остатка». Проанализируем, почему так происходит и как привести систему в чувство.

Разбираемся в архитектуре: почему старые отчеты врут?

Прежде всего, давайте поймем, что в версии 11.5 кардинально изменился механизм контроля остатков. Раньше система опиралась на регистр накопления ТоварыНаСкладах. Теперь же за "свободный остаток" отвечает сложный механизм распределения запасов, который аккумулируется в регистре сведений РаспределениеЗапасов.

Рассмотрим типичную ситуацию: в ведомости остаток есть, а в отчете Остатки и доступность товаров склад либо не отображается, либо в колонке "Доступно" стоит ноль. Это означает, что физически товар на полке лежит (запись в ТоварыНаСкладах есть), но логически он либо заблокирован резервом, либо система "забыла" обновить данные о его доступности в специальном техническом регистре.

Шаг 1: Проверка на обособленное обеспечение и резервы

Выясним, не зарезервирован ли наш товар под конкретное назначение. В 1С:УТ 11.5 товар может быть привязан к конкретному заказу клиента (обособлен). В этом случае он числится на складе, но для свободного перемещения недоступен.

  1. Откроем отчет Остатки и доступность товаров.
  2. Нажмем "Настройки" и попробуем найти флаг Показать обособленные товары. Если товар отображается только с этим флагом, значит, он "чужой" — он ждет своего клиента.
  3. Если в заказе клиента стоит статус Резервировать на складе, этот товар будет вычтен из свободного остатка. Чтобы его переместить, в заказе нужно временно установить статус К обеспечению или снять резерв.

Шаг 2: Работа с регистром «Распределение запасов»

Если заказов нет, а остатка все равно не хватает, значит, мы столкнулись с ошибкой в регистре сведений РаспределениеЗапасов. Это "сердце" системы контроля остатков в 11.5. Часто данные в нем "зависают" из-за сбоев в фоновых заданиях или программных ошибок релизов.

Проанализируем ситуацию через Функции для технического специалиста (ранее назывались "Все функции"):

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

Эта процедура пересчитает виртуальные остатки на основе реальных движений документов и часто решает проблему мгновенно.

Шаг 3: Настройка производительного режима и обновление базы

Иногда ошибки распределения запасов возникают из-за того, что система работает в так называемом "производительном режиме", но фоновые процессы не справляются с обновлением данных. Разберем, как это лечится радикально.

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

  1. Перейдем в раздел НСИ и администрированиеСклад и доставка.
  2. Найдем настройку Использовать производительный режим записи информации о доступности товаров и работ. Попробуйте включить её (если она выключена) или наоборот — временно выключить для проверки.
  3. Если проблема массовая, рекомендуется запустить 1С с параметром командной строки:
    
    /c ЗапуститьОбновлениеИнформационнойБазы
    
    Это инициирует выполнение всех отложенных обработчиков обновления данных, включая те, что отвечают за актуализацию регистров распределения запасов.

Шаг 4: Проверка регламентных заданий

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

  1. Откроем ОбслуживаниеРегламентные операцииРегламентные и фоновые задания.
  2. Найдем задание Актуализация распределения запасов.
  3. Убедимся, что оно включено и выполняется без ошибок. Если оно "зависло" или выдает ошибку, система будет видеть только старые остатки, игнорируя новые поступления.

Шаг 5: Использование корректировки регистров (крайний случай)

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

Через "Функции для технического специалиста" найдем документ Корректировка регистров. В нем можно вручную сделать приход по регистру СвободныеОстатки (или аналогичным техническим регистрам в зависимости от версии), чтобы "подтолкнуть" систему. Но будьте осторожны: при следующем глобальном пересчете (например, при закрытии месяца или использовании обработки исправления ошибок) эти правки могут привести к дублированию или новым расхождениям.

Резюме и рекомендации

Для предотвращения подобных проблем в 1С:УТ 11.5 мы рекомендуем:

Таким образом, мы выяснили, что проблема "недостаточности свободного остатка" чаще всего кроется не в отсутствии товара, а в рассинхронизации между физическими остатками и техническим регистром распределения, который был введен для ускорения работы системы в крупных базах.

← На главную