Как исправить зависшую стоимость при нулевом остатке в 1С:Управление торговлей 10.3

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

В процессе работы в конфигурации 1С:Управление торговлей 10.3 пользователи часто сталкиваются с ситуацией, когда в отчетах (например, в «Ведомости товаров на складах» или «Ведомости по партиям товаров») возникает аномалия: количество товара равно нулю, а стоимостная оценка при этом остается положительной или отрицательной (например, 0 шт. стоимостью 100 рублей). Это классическая проблема партионного учета, которая особенно остро проявляется при использовании механизма распределения дополнительных расходов в цепочках перемещений между организациями (Intercompany).

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

Выясним причину: почему стоимость «зависает»?

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

  1. Организация №1 закупает товар документом ПоступлениеТоваровУслуг. Система фиксирует партию.
  2. Организация №1 передает товар в Организацию №2 через документ ПеремещениеТоваров. На этот момент себестоимость перемещения рассчитывается исходя из текущих данных партии (например, 1000 руб.).
  3. Спустя некоторое время (возможно, в следующем месяце) бухгалтер вводит документ ПоступлениеДопРасходов и привязывает его к первому поступлению на Организацию №1.
  4. Стоимость партии на Организации №1 увеличивается (например, на 100 руб.), но документ перемещения, который уже «унес» товар в другую организацию, об этом «не знает», так как он не был перепроведен.

В итоге на Организации №1 количество списано полностью (0 шт.), но доп. расходы в 100 руб. остались «висеть» на остатках организации-отправителя. Система видит, что партия пришла, но не была полностью распределена по стоимости.

Метод 1: Регламентный документ «Корректировка стоимости списания»

Первое, что мы должны рассмотреть — это штатный механизм закрытия месяца. В УТ 10.3 предусмотрен специальный документ КорректировкаСтоимостиСписанияТоваров.

Разберем, как он работает:

Этот документ предназначен для усреднения стоимости списания по итогам месяца (если используется метод «По средней») или для доведения стоимости списания до актуальных значений (при методе FIFO). Если дополнительные расходы были введены в том же отчетном периоде, что и реализация/перемещение, данный документ должен автоматически «подтянуть» эти суммы.

Важный нюанс: Как было отмечено в обсуждении, этот документ хорошо справляется с доведением стоимости до документа РеализацияТоваровУслуг, но часто пасует перед цепочками перемещений между организациями. Если после формирования документа стоимость все равно остается на складе, перейдем к более глубоким методам.

Метод 2: Восстановление последовательности через «Проведение по партиям»

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

Рассмотрим преимущества этого способа:

Чтобы исправить ситуацию, необходимо установить границу последовательности на дату самого раннего документа ПоступлениеДопРасходов, который вызвал расхождение, и запустить процесс. После этого документ ПеремещениеТоваров увидит увеличившуюся стоимость партии и передаст её дальше в Организацию №2.

Метод 3: Ручная корректировка регистров (самый быстрый способ)

Если проблема носит разовый характер или возникла в далеком закрытом периоде, который категорически нельзя перепроводить, воспользуемся документом КорректировкаЗаписейРегистров. Это «хирургический» метод, позволяющий убрать только стоимостные хвосты.

Проанализируем ситуацию по шагам:

  1. Сформируйте отчет «Ведомость по партиям товаров на складах». В настройках обязательно укажите группировки: Номенклатура, Склад, Организация и Документ-регистратор (это критически важно).
  2. Найдите строку, где количество равно 0, а стоимость не равна 0. Вы увидите, какая именно партия («Документ оприходования») «зависла».
  3. Создайте документ КорректировкаЗаписейРегистров.
  4. Добавьте в таблицу регистр накопления ПартииТоваровНаСкладах (Управленческий учет) (и Бухгалтерский, если учет ведется параллельно).
  5. Заполните движение:
    • Вид движения: Расход.
    • Номенклатура / Склад / Организация: Из отчета.
    • Документ оприходования: Та самая «зависшая» партия.
    • Количество: 0.
    • Стоимость: Сумма остатка (например, 100 руб.).

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

Метод 4: Анализ и исправление через Intercompany

В УТ 10.3 при перемещении товара между организациями крайне важно соблюдать логику. Если вы распределяете доп. расходы на ОРГ1, а товар уже продан от лица ОРГ2, то стоимость должна пройти путь: Поступление (ОРГ1) -> Перемещение (ОРГ1->ОРГ2) -> Реализация (ОРГ2).

Рассмотрим пример кода, который мог бы использоваться в обработках для поиска таких «зависших» остатков (для разработчиков):


Запрос = Новый Запрос;
Запрос.Текст = 
"ВЫБРАТЬ
|	ПартииТоваровОстатки.Номенклатура,
|	ПартииТоваровОстатки.Склад,
|	ПартииТоваровОстатки.ДокументОприходования,
|	ПартииТоваровОстатки.СтоимостьОстаток,
|	ПартииТоваровОстатки.КоличествоОстаток
|ИЗ
|	РегистрНакопления.ПартииТоваровНаСкладах.Остатки(&ДатаКонца, ) КАК ПартииТоваровОстатки
|ГДЕ
|	ПартииТоваровОстатки.КоличествоОстаток = 0
|	И ПартииТоваровОстатки.СтоимостьОстаток <> 0";

Результат = Запрос.Выполнить().Выбрать();
Пока Результат.Следующий() Цикл
	// Логика автоматического создания документа КорректировкаЗаписейРегистров
КонецЦикла;

Как предотвратить проблему в будущем?

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

  1. Соблюдайте хронологию: Документ ПоступлениеДопРасходов должен иметь дату позже, чем ПоступлениеТоваровУслуг, но обязательно раньше, чем любые документы списания или перемещения этой партии.
  2. Используйте статьи затрат: Если дополнительные расходы приходят спустя месяц или два, когда товар уже давно продан, не стоит распределять их на партию. В этом случае правильнее списать их на финансовый результат (статьи затрат/издержки обращения) документом ПрочиеЗатраты. Это сохранит чистоту себестоимости и избавит от необходимости перепроводить прошлые периоды.
  3. Регулярный контроль: Возьмите за правило перед закрытием месяца формировать отчет «Ведомость по партиям» с фильтром Количество = 0 и Стоимость <> 0. Это позволит находить ошибки до того, как они накопятся в огромный ком.

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

← На главную