Как исправить отрицательные остатки при оформлении передач товаров между организациями в 1С:Управление торговлей 11?

Программист Управленческий учет Торговля и дистрибуция
← На главную

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

Разберем причину: Склады против Организаций

Первое, что нам необходимо понять — в системе 1С:УТ 11 параллельно работают два разных контура учета. Проанализируем их различия:

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

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

Шаг 1. Анализ регистра «Товары организаций»

Прежде чем что-то исправлять, выясним, откуда система берет отрицательные цифры. Для этого воспользуемся отчетом «Остатки товаров организаций» (раздел «Финансовый результат и контроллинг» — «Отчеты по финансовому результату»).

В настройках отчета обязательно добавим детализацию по следующим измерениям:

Часто бывает так, что общее количество товара по организации равно нулю, но внутри «видов запасов» висит пересортица: например, +10 шт по виду запаса «Собственный товар» и -10 шт по пустому или другому виду запаса. Система воспринимает это как отрицательный остаток и блокирует проведение передачи.

Шаг 2. Временное отключение контроля остатков

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

  1. Перейдем в раздел НСИ и администрирование — Настройка НСИ и разделов — Финансовый результат и контроллинг.
  2. Найдем подраздел Учет товаров.
  3. Снимем галочку Контролировать остатки товаров организаций.

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

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

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

Шаг 3. Актуализация видов запасов

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

Проанализируем процедуру группового переоформления:

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

Шаг 4. Помощник исправления остатков товаров организаций

В типовых конфигурациях 1С:УТ 11 существует специальный инструмент для борьбы с «фантомными» минусами. Рассмотрим алгоритм работы с ним:

  1. Перейдем в раздел Финансовый результат и контроллинг — Помощник исправления остатков товаров организаций.
  2. Выберем нужный период и организацию.
  3. Нажмем Далее. Программа просканирует регистр ТоварыОрганизаций и найдет все строки, где количество ушло в минус.
  4. Система предложит автоматически создать документы Корректировка видов запасов или Инвентаризация для выравнивания ситуации.

Технический момент: Дата актуальности и итоги

Если система продолжает писать про «дату актуальности», несмотря на отсутствие минусов в отчетах, выясним состояние итогов регистров. В 1С:Предприятие 8.3 итоги хранятся в специальных таблицах для ускорения работы. Если последовательность документов была сильно нарушена, итоги могут «зависнуть».

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

  1. Перейдем в НСИ и администрирование — Обслуживание — Регламентные операции — Управление итогами.
  2. Установим период рассчитанных итогов на конец текущего месяца.
  3. Выполним полную пересборку итогов для регистра накопления ТоварыОрганизаций.

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

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


// Пример логики для программного перепроведения с очисткой видов запасов
Для Каждого СсылкаИзСписка Из ВыбранныеДокументы Цикл
    ОбъектДок = СсылкаИзСписка.ПолучитьОбъект();
    
    // Очищаем таблицу видов запасов, чтобы система пересчитала её при проведении
    ОбъектДок.ВидыЗапасов.Очистить();
    
    // Устанавливаем режим записи с проведением и отключением проверок, если нужно
    Попытка
        ОбъектДок.Записать(РежимЗаписиДокумента.Проведение, РежимПроведенияДокумента.Неоперативный);
        Сообщить("Документ " + СсылкаИзСписка + " успешно перепроведен");
    Исключение
        Сообщить("Ошибка при проведении: " + КраткоеОписаниеОшибки(ИнформацияОбОшибке()));
    КонецПопытки;
КонецЦикла;

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

← На главную