Как исправить ошибку «Обнаружен отрицательный остаток» при переносе остатков из УТ 10.3 в УТ 11?

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

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

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

Выясним причину: почему стандартные отчеты показывают одно, а выгрузка — другое?

Главная техническая причина кроется в архитектуре хранения данных в системе 1С. В конфигурации «Управление торговлей 10.3» количественный учет товаров и финансово-организационный учет ведутся в разных, параллельных регистрах накопления. Стандартные отчеты и правила переноса данных обращаются к абсолютно разным таблицам базы данных.

Рассмотрим подробнее три ключевых регистра, которые задействованы в этой схеме:

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

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

Проанализируем основные причины появления скрытых «минусов»

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

Разберем по шагам: пошаговый алгоритм локализации и исправления ошибки

Для того чтобы успешно перенести остатки, нам необходимо найти и устранить расхождения в базе-источнике УТ 10.3. Пройдем этот путь по шагам.

Шаг 1. Настройка специализированных отчетов

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

В открывшемся окне настроим отчет следующим образом:

Сформируем отчет. Если мы увидим отрицательное значение в колонке «Конечный остаток» по какой-либо организации — причина найдена.

Шаг 2. Анализ партионного учета

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

Шаг 3. Восстановление партионной последовательности

Если обнаружены проблемы в регистре партий, выполним следующие действия:

Шаг 4. Устранение межфирменных расхождений (Интеркампани)

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

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

Шаг 5. Применение ручной корректировки регистров (в крайних случаях)

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

Для этого мы можем использовать специализированный документ:

Альтернативный подход к переносу данных

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

Он заключается в модификации правил конвертации данных. Можно настроить правила таким образом, чтобы выгрузка остатков происходила напрямую из физического регистра ТоварыНаСкладах, игнорируя организационную и партионную аналитику УТ 10.3. При этом в целевой базе УТ 11:

Этот подход позволяет быстро запустить учет в новой системе «с чистого листа», избежав бесконечного исправления старых ошибок в закрытых периодах УТ 10.3.

Таким образом, мы детально разобрали природу ошибки отрицательного остатка при выгрузке из УТ 10.3 в УТ 11, изучили разницу в поведении регистров складского и организационного учета и освоили методику эффективного исправления данных. Регулярная проверка регистров и поддержание порядка в многофирменном учете — залог быстрого и беспроблемного перехода на современные решения от компании 1С.

← На главную