Как исправить ошибку «Обнаружены отрицательные остатки партий в регистре себестоимости» при возврате товаров в 1С:ERP?

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

При проведении процедуры закрытия месяца в программах 1С:ERP Управление предприятием или 1С:Комплексная автоматизация 2 пользователи часто сталкиваются со следующей критической ошибкой:

Обнаружены отрицательные остатки партий в регистре себестоимости по организации...

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


Как работает Аналитика финансового учета (АФУ) и Партионный учет

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

Этот регистр содержит несколько ключевых измерений:

  1. Аналитика учета номенклатуры (АУН) — отвечает за физические свойства и местонахождение товара (Номенклатура, Характеристика, Склад, Серия).
  2. Аналитика финансового учета (АФУ) — отвечает за финансовый разрез учета. В зависимости от настроек вашей системы, в АФУ могут входить такие параметры, как Группа финансового учета номенклатуры (ГФУ), Сделка, Подразделение или Менеджер. Это так называемое «мягкое» обособление себестоимости.
  3. Раздел учета — определяет статус товара (например, "Товары на складах", "Товары переданные на комиссию" и т.д.).
  4. Вид запасов — определяет принадлежность товара конкретной организации, схему налогообложения и т.д.
  5. Партия — документ первого поступления товара в систему (Приобретение товаров и услуг, Отчет производственной смены и т.д.).

Важно понимать разницу в заполнении этих измерений при проведении документов:

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


Выясняем причины сбоя при возврате от комиссионера

Проанализируем классический сценарий, описанный на форуме. Товар был передан на комиссию в прошлом месяце. В текущем месяце оформляется возврат от комиссионера. При закрытии месяца система выдает ошибку по партиям.

Почему партионный движок не смог сопоставить документы?

  1. Разорванная связь с исходным документом: В документе Возврат товаров от клиента или Поступление товаров от комиссионера на вкладке "Товары" не указан (или указан неверно) исходный документ продажи/передачи. Без этой жесткой привязки программа пытается подобрать партию по средней стоимости текущего месяца или по методу FIFO, но не находит подходящих остатков с нужной аналитикой.
  2. Различие в ключах АФУ: Исходный документ передачи на комиссию был проведен с определенной аналитикой финансового учета (например, была заполнена сделка или конкретное подразделение). При оформлении возврата эти реквизиты в документе не заполнились или изменились. Программа сформировала движение с пустой АФУ, из-за чего возник минус по пустой аналитике и остался невостребованный плюс по заполненной.
  3. Изменение настроек системы: Если между моментом передачи товара и его возвратом администратор изменил настройки обособленного учета себестоимости (раздел НСИ и администрирование — Финансовый результат и контроллинг), правила формирования ключей АФУ изменились. Документы разных периодов начали делать движения по разным правилам, что привело к разрыву регистра.
  4. Отсутствие партий в исходном документе: Как было замечено в обсуждении, в исходном документе передачи на комиссию в закрытом периоде по какой-то причине вообще отсутствовали партии в регистре Себестоимость товаров (например, из-за ручных корректировок или сбоев при предыдущих расчетах себестоимости). Возврату просто не к чему привязаться.

Шаг 1. Диагностика проблемы с помощью Универсального отчета

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

Выполним следующие шаги для настройки отчета:

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

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


Номенклатура: "Плитка керамическая"
  -- [АФУ]: "Основное подразделение" | [Партия]: "Передача на комиссию №1" | Конечный остаток: +10 шт.
  -- [АФУ]: Пустая аналитика         | [Партия]: Пустая партия            | Конечный остаток: -10 шт.

Это классический пример разрыва аналитики: суммарный количественный остаток по номенклатуре равен 0, но из-за несовпадения АФУ и партий месяц не может быть закрыт.


Шаг 2. Исправление ошибки (Способ 1: С открытием периода)

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

  1. Сделайте резервную копию базы данных. Все подобные исправления настоятельно рекомендуется сначала тестировать на копии.
  2. Откройте прошлый период для редактирования.
  3. Перейдите в документ возврата в текущем периоде и временно распроведите его.
  4. Откройте исходный документ передачи/реализации в прошлом периоде. Убедитесь, что все его реквизиты заполнены корректно. Обратите внимание на подразделение, склад, сделку и соглашение.
  5. Перепроведите исходный документ передачи.
  6. Зайдите в документ возврата. На вкладке "Товары" в колонке "Документ продажи" (или "Документ передачи") принудительно выберите этот исходный документ. Если колонка скрыта, воспользуйтесь настройкой формы или заполните ее через специальный инструмент подбора документов продажи.
  7. Проведите документ возврата.
  8. Запустите процедуру Закрытие месяца последовательно: сначала за прошлый месяц, затем за текущий. Партионный движок автоматически перераспределит партии, заполнит АФУ в возврате на основании данных передачи, и ошибка исчезнет.

Шаг 3. Исправление ошибки (Способ 2: Без открытия закрытого периода)

Очень часто период закрыт «наглухо», отчетность сдана, и открывать прошлые месяцы категорически запрещено. В этом случае нам на помощь приходит ручное выравнивание остатков в текущем (открытом) периоде с помощью специального инструмента.

Мы воспользуемся документом Корректировка регистров. Этот документ позволяет напрямую вносить записи в регистры накопления, минуя стандартную логику проведения документов.

Рассмотрим пошагово, как правильно «схлопнуть» аналитику:

  1. Выясним точные параметры «висящих» остатков из Универсального отчета, который мы настроили на Шаге 1. Нам понадобятся точные значения измерений: Аналитика учета номенклатуры, Аналитика финансового учета, Партия, Вид запасов и Раздел учета для обеих строк (плюсовой и минусовой).
  2. Перейдем в меню Администрирование — Корректировка регистров (или найдем этот документ через функции технического специалиста).
  3. Создадим новый документ Корректировка регистров. Дату документа установим на самый первый день текущего (открытого) месяца, желательно на 00:00:00. Это важно, чтобы корректировка успела повлиять на последующий расчет себестоимости за этот месяц.
  4. В настройках состава регистров выберем регистр накопления Себестоимость товаров.
  5. Нам необходимо добавить в таблицу две строки с видом движения Приход (или одну строку Приход и одну Расход, но метод двойного Прихода с разными знаками более нагляден и безопасен):

Строка №1 (Убираем ошибочный минус):

Строка №2 (Убираем зависший плюс):

Проанализируем пример заполнения движений в документе корректировки:


Строка 1:
Регистр: Себестоимость товаров
Вид движения: Приход
Номенклатура: Плитка керамическая
Аналитика финансового учета: <Пусто>
Партия: <Пусто>
Количество: 10
Стоимость (Регл): 15000

Строка 2:
Регистр: Себестоимость товаров
Вид движения: Приход
Номенклатура: Плитка керамическая
Аналитика финансового учета: Основное подразделение
Партия: Передача на комиссию №1
Количество: -10
Стоимость (Регл): -15000

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


Рекомендации по предотвращению подобных ошибок

Чтобы минимизировать появление ошибок отрицательных остатков партий в будущем, мы рекомендуем придерживаться следующих правил при работе в 1С:ERP:

← На главную