Почему в 1С:УТ 11 механизм Интеркомпани передает товары только частично и как это исправить?

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

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

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

1. Архитектурные изменения в «Интеркомпани» (сравнение УТ 11.3 и УТ 11.4+)

Для того чтобы понять корень проблемы, нам необходимо проанализировать, как изменилась логика работы конфигурации. В старых версиях системы (до УТ 11.3 включительно) за межфирменные продажи отвечали два основных регистра накопления: ТоварыОрганизаций и ТоварыКПередаче. Когда одна организация продавала товар другой, в регистре ТоварыОрганизаций фиксировался отрицательный остаток (минус), а в регистре ТоварыКПередаче регистрировалась необходимость оформления перепродажи. В конце месяца система просто анализировала эти минусы и генерировала документы передачи.

Начиная с версии 11.4, фирма «1С» полностью переработала этот механизм:

Такой подход позволил реализовать динамическое планирование продаж, но сделал систему крайне чувствительной к хронологической последовательности и корректности заполнения аналитики видов запасов.

2. Почему обычное перепроведение документов не помогает?

Многие администраторы и аналитики пытаются решить проблему «в лоб» — запускают групповое перепроведение документов за месяц. Однако в случае с регистром РезервыТоваровОрганизаций эта процедура часто оказывается бесполезной по следующим причинам:

  1. Динамическая модель регистра: При проведении документа продажи система анализирует остатки не только на момент проведения, но и распределяет резервы по всей цепочке документов вперед до конца открытого периода.
  2. Сторнирующие записи: Если документы редактировались задним числом, в регистре резервов могут накопиться «битые» сторно-записи. Обычное проведение документов поверх этих записей не очищает их, а лишь накладывает новые движения, из-за чего помощник закрытия месяца перестает видеть реальную потребность в передачах.

3. Главный виновник — «Владелец» в видах запасов

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

При редактировании документов задним числом (например, при изменении цен, спецификаций или просто при повторном перепроведении вручную) в табличных частях документов могут «слетать» виды запасов. Наиболее критичная ошибка — когда в регистре накопления ТоварыОрганизаций поле Организация заполнено верно, а в измерении ВидЗапаса поле «Владелец» оказывается пустым.

Почему зануляется владелец запаса?

Посмотрим на пример запроса, с помощью которого мы можем быстро выявить такие проблемные записи с пустым владельцем запаса прямо в базе данных:


ВЫБРАТЬ
    Товары.Регистратор КАК ДокументПродажи,
    Товары.Номенклатура КАК Номенклатура,
    Товары.ВидЗапаса КАК ВидЗапаса,
    Товары.ВидЗапаса.Владелец КАК ВладелецЗапаса,
    Товары.Количество КАК Количество
ИЗ
    РегистрНакопления.ТоварыОрганизаций КАК Товары
ГДЕ
    Товары.Период МЕЖДУ &НачалоПериода И &КонецПериода
    И Товары.ВидЗапаса.Владелец = ЗНАЧЕНИЕ(Справочник.Организации.ПустаяСсылка)

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

4. Пошаговая методика исправления проблемы

Для того чтобы полностью восстановить работоспособность механизма передач между организациями, выполним следующие шаги.

Шаг 1. Проверим и запустим регламентное задание свертки

В «1С:Управление торговлей 11» встроено специальное фоновое задание, предназначенное для наведения порядка в регистре резервов — СверткаРезервовТоваровОрганизаций. Его основная задача — схлопывать и удалять избыточные движения сторно.

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

Шаг 2. Полный сброс движений (правильное перепроведение)

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

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

Процедура ОчиститьДвиженияРегистраРезервов(ДокументСсылка) Export
    НаборЗаписей = РегистрыНакопления.РезервыТоваровОрганизаций.СоздатьНаборЗаписей();
    НаборЗаписей.Отбор.Регистратор.Установить(ДокументСсылка);
    НаборЗаписей.Записать(); // Записываем пустой набор, тем самым очищая движения
КонецПроцедуры
  1. После того как движения регистра резервов очищены, последовательно проведем документы реализации в строгом хронологическом порядке. При проведении система заново, уже без ошибок, сформирует правильные виды запасов и запишет корректные резервы.

Шаг 3. Анализ расхождений через Универсальный отчет

Убедимся, что после перепроведения данные выровнялись. Для этого настроим Универсальный отчет по регистру накопления РезервыТоваровОрганизаций. Выберем таблицу «Остатки и обороты», сгруппируем данные по полям Организация, Номенклатура, АналитикаУчетаНоменклатуры и сопоставим их с регистром ТоварыОрганизаций. Конечные остатки в резервах по переданным позициям должны быть нулевыми.

Шаг 4. Переход на ежедневные передачи товаров (профилактика)

Оформление межфирменных передач один раз в конце месяца — главная причина регулярного возникновения подобных ошибок. В течение месяца товар продается «в минус», партионный учет и расчет себестоимости по ГТД не могут сопоставить данные, из-за чего «слетает» аналитика.

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

Резюме

Неполная передача товаров по «Интеркомпани» в УТ 11.4+ — это следствие нарушения хронологии проведения документов и повреждения аналитики видов запасов (пустой владелец запаса). Решается данная проблема только комплексным подходом: очисткой регистра резервов, исправлением видов запасов и строгим хронологическим перепроведением документов реализации с последующим запуском свертки резервов.

← На главную