Ситуация, когда фактическое наличие товара на складе радикально расходится с данными в программе 1С, — довольно частое явление, особенно если учет долгое время велся некорректно. Основная сложность заключается в том, что в документ Пересчет товаров кладовщики обычно вносят только то, что реально нашли на полках. При этом в базе остаются «висеть» сотни позиций, которых физически нет, а также множество дублей номенклатуры. Разберем пошагово, как привести учет в соответствие с реальностью и правильно отразить списание отсутствующих позиций.
Прежде всего, проанализируем, как работает механизм инвентаризации в современных конфигурациях (таких как 1С:Управление торговлей, КА или ERP). Сам по себе документ Пересчет товаров — это лишь инструмент фиксации факта. Он не изменяет остатки в регистрах накопления и не делает проводок. Для того чтобы списать отсутствующие товары, необходимо сравнить зафиксированный факт с учетными данными системы.
Если вы уже создали документ и внесли в него только фактические остатки, система может «не увидеть» те товары, которые числятся в базе, но не попали в документ. Чтобы исправить это, воспользуемся стандартными средствами заполнения.
Для того чтобы программа поняла, что по остальным товарам наступила недостача, их необходимо добавить в табличную часть документа с нулевым фактическим количеством. Рассмотрим, как это сделать:
Пересчет товаров.После того как документ пересчета заполнен и проведен, необходимо отразить изменения в финансовом и складском учете. Для этого в 1С предусмотрено рабочее место «Оформление излишков и недостач». Разберем этот этап подробнее:
Система проанализирует разницу между колонками «Учет» и «Факт» из всех документов пересчета. Все позиции, которых не оказалось в наличии, попадут в список на оформление документа Списание недостач товаров. Важно понимать, что именно этот документ окончательно «очистит» регистр Товары на складах и счета бухгалтерского учета.
Важный нюанс: Если организация работает на ОСН (общей системе налогообложения), массовое списание товаров может потребовать восстановления НДС. Рекомендуем предварительно проконсультироваться с бухгалтерией, так как простое удаление «хлама» из базы может привести к налоговым рискам.
В ситуациях, когда бухгалтерия годами вносила товары «как попало», в справочнике Номенклатура неизбежно возникают дубли. Например, один и тот же болт может числиться под пятью разными названиями. Если вы просто спишете старые остатки и оприходуете новые на правильные карточки, в отчетах останется неразбериха.
Проанализируем алгоритм действий для исправления этой ситуации:
Если учет запущен настолько сильно, что попытки сопоставить факт с учетом в одном документе превращаются в хаос, применим метод «полной перезагрузки»:
Списание товаров, заполнив его всеми текущими остатками склада (команда «Заполнить по остаткам на складе»). Проведем его — теперь склад пуст.Оприходование товаров и внесем в него только те позиции и в том количестве, которое реально нашел кладовщик.Этот метод позволяет жестко разделить «прошлое» (ошибки учета) и «настоящее» (новый чистый учет), однако он требует внимательности при выборе статей расходов для списания и доходов для оприходования, чтобы не исказить финансовый результат предприятия.
Если необходимо исправить только управленческие остатки на складах, не затрагивая при этом бухгалтерские счета и не создавая лишних документов списания, можно воспользоваться инструментом Корректировка регистров. Выясним причину, почему это может быть полезно: иногда бухгалтерия категорически против официальных актов списания из-за налогов, но кладовщику нужны реальные цифры в отчетах. В этом случае создается запись в регистр Товары на складах с видом движения «Расход» по всем ошибочным позициям.
Пример программного обхода остатков для последующего списания через обработку может выглядеть так:
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| ТоварыНаСкладахОстатки.Номенклатура,
| ТоварыНаСкладахОстатки.ВНаличииОстаток КАК Остаток
|ИЗ
| РегистрНакопления.ТоварыНаСкладах.Остатки(&Дата, Склад = &Склад) КАК ТоварыНаСкладахОстатки";
Запрос.УстановитьПараметр("Дата", ТекущаяДата());
Запрос.УстановитьПараметр("Склад", СсылкаНаСклад);
Результат = Запрос.Выполнить().Выбрать();
Пока Результат.Следующий() Цикл
// Логика добавления в документ Пересчета или Списания
КонецЦикла;
Подводя итог, отметим: для качественного результата важно не просто «списать остатки», а предварительно навести порядок в справочнике номенклатуры и запретить в настройках системы «Списание запасов при отсутствии остатков» (отгрузку в минус), чтобы новые ошибки не начали накапливаться сразу после завершения инвентаризации.