Почему в 1С:УТ 11.5 не проводится чек или реализация при наличии остатков на складе?

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

Ситуация, когда программа 1С:Управление торговлей (УТ 11.5) отказывается проводить документ отгрузки, ссылаясь на отсутствие товара, в то время как все отчёты показывают наличие, является одной из самых «популярных» и в то же время сложных для диагностики. Мы часто сталкиваемся с сообщением: «Для отгрузки/резервирования необособленного товара недостаточно свободного остатка». На первый взгляд это кажется программным сбоем, но на самом деле за этим стоит сложная логика распределения запасов. Разберем эту ситуацию подробно и выясним, где искать «пропавший» товар.

Анализируем отчеты и первичные данные

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

Рассмотрим, какие данные могут вводить в заблуждение:

  1. Дата и время документа: Если поступление товара зафиксировано в 12:00:00, а реализация создается временем 11:59:59 того же дня, система выдаст ошибку. Проверим хронологию перемещений и поступлений.
  2. Склад и организация: Проанализируем отчет Ведомость по товарам организаций. Часто товар физически лежит на складе, но числится за другим юридическим лицом. В этом случае полезно выполнить сравнение товаров на складах организаций и себестоимости товаров (для этого подойдёт анализ расхождений товаров по организациям и складам), чтобы выявить расхождения в учете и понять, почему документ не проводится.
  3. Серийный учет и характеристики: Если для товара включен учет по сериям, убедимся, что выбранная в документе серия действительно есть в свободном остатке, а не зарезервирована под другой заказ — здесь поможет отчет по остаткам и резервам серий товаров.

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

В последних версиях УТ 11 архитектура учета запасов существенно изменилась. Теперь ключевую роль играет регистр накопления РаспределениеЗапасов. Именно на его данных базируется проверка возможности отгрузки. Рассмотрим подробнее, как это работает.

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

Для решения этой проблемы попробуем выполнить следующие действия:

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

Влияние обособленного учета и реквизита «Назначение»

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

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

Решение: Очистим колонку Назначение в документе. После очистки система начнет искать товар в «свободном остатке».

Сравнение продажи розничному покупателю и конкретному контрагенту

Проанализируем интересный случай: на розничного покупателя чек пробивается, а на конкретного клиента реализация не проводится. Это явный признак того, что проблема кроется в Соглашении или Договоре с клиентом.

Проверим следующие настройки:

Технический нюанс: почему «новый документ проводится», а копия — нет?

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

Для программиста хорошим способом диагностики будет проверка остатков через запрос:


// Пример упрощенного кода для проверки остатков в регистре через запрос
Запрос = Новый Запрос;
Запрос.Текст = 
    "ВЫБРАТЬ
    |   РаспределениеЗапасовОстатки.КоличествоОстаток КАК Свободно
    |ИЗ
    |   РегистрНакопления.РаспределениеЗапасов.Остатки(&МоментВремени, Номенклатура = &Номенклатура) КАК РаспределениеЗапасовОстатки";

Запрос.УстановитьПараметр("МоментВремени", Новый Граница(Объект.Дата, ВидГраницы.Включая));
Запрос.УстановитьПараметр("Номенклатура", ТекущаяСтрока.Номенклатура);
Результат = Запрос.Выполнить().Выгрузить();

Подведение итогов и рекомендации

Если вы столкнулись с ошибкой нехватки остатков при их фактическом наличии, рекомендуем следующий алгоритм действий:

  1. Не копируйте старые документы, если не уверены в чистоте их данных.
  2. Проверьте скрытые реквизиты (Назначение, Сделка) через меню Еще — Изменить форму.
  3. Убедитесь, что регламентное задание по распределению запасов работает корректно.
  4. Проверьте разрез организаций: если товар числится за другим юрлицом, используйте автоматическое выравнивание остатков для исправления расхождений в регистре товаров организаций — в этом поможет автоматическое выравнивание остатков для исправления ошибок учета.
  5. В критических ситуациях, когда отгрузку нужно сделать немедленно, можно использовать решение для проведения документов без контроля остатков, чтобы исправить учетные ошибки позже.

Помните, что 1С — это строгая система. Наша задача — найти, в каком именно разрезе (склад, организация, назначение, серия) возникло расхождение.

← На главную