В типовой конфигурации «1С:Торговля и Склад 7.7» отсутствует отдельный документ «Корректировка поступления», который появился только в восьмой версии платформы. При получении корректировочного счета-фактуры (КСФ) на уменьшение количества или стоимости товаров пользователи часто вводят документ «Поступление ТМЦ» с отрицательными суммами и количеством. Разберем, к каким скрытым проблемам в учете это приводит и как правильно организовать корректировку поступлений.
Проанализируем работу регистра остатков ПартииТоваров (или ПартииНаличие). Измерением этого регистра выступает Партия — ссылка на элемент справочника Партии, который жестко привязан к конкретному первичному документу оприходования. Когда мы проводим документ поступления с минусовым количеством:
Партии.В результате в регистрах накапливаются разнонаправленные остатки («плюс» на исходной партии и «минус» на корректирующей), база данных нерационально разрастается, а отчеты по партиям показывают некорректную картину.
Рассмотрим наиболее удобный способ доработки конфигурации, при котором сохраняется привычный для пользователей ввод документов и не ломается типовая выгрузка данных в 1С:Бухгалтерию 7.7.
Разберем по шагам реализацию этого механизма:
ПоступлениеТМЦ на основании документа ПоступлениеТМЦ.ВводНаОсновании(), которая копирует реквизиты шапки и табличную часть исходного документа с возможностью указания дельты (разницы со знаком минус).Посмотрим на пример фрагмента кода в модуле документа ПоступлениеТМЦ в процедуре ОбработкаПроведения():
Если ПустоеЗначение(ДокументОснование) = 0 Тогда
Если ДокументОснование.Вид() = "ПоступлениеТМЦ" Тогда
// Обработка корректировки: уменьшаем остатки по конкретной партии основания
ВыбратьСтроки();
Пока ПолучитьСтроку() = 1 Цикл
// Находим партию исходного документа
ПартияОснования = глНайтиПартию(ДокументОснование, Номенклатура);
Регистр.ПартииНаличие.Фирма = Фирма;
Регистр.ПартииНаличие.Номенклатура = Номенклатура;
Регистр.ПартииНаличие.Склад = Склад;
Регистр.ПартииНаличие.Партия = ПартияОснования;
// Выполняем уменьшение партии (движение Расход на абсолютное значение)
Регистр.ПартииНаличие.Количество = Мод(Количество);
Регистр.ПартииНаличие.СуммаБезНДС = Мод(СуммаБезНДС);
Регистр.ПартииНаличие.НДС = Мод(НДС);
Регистр.ПартииНаличие.Расход();
КонецЦикла;
КонецЕсли;
КонецЕсли;
В этом случае платформа уменьшает существующую запись в регистре по исходной партии, не создавая висящих отрицательных хвостов.
Если требуется скорректировать только количество в сторону уменьшения (без изменения цены), можно воспользоваться штатным документом ВозвратПоставщику. В этом документе прямо указывается партия исходного поступления, с которой списывается возвращаемый товар.
Чтобы бухгалтерия не видела лишних хозяйственных операций по возврату товара (так как фактического физического возврата не было):
ВозвратПоставщику на количество расхождения.Проанализируем ситуацию с точки зрения перехода права собственности. Если расхождение (недовоз, бой, пересорт) обнаружено непосредственно при приемке на складе покупателя:
Поступление ТМЦ строго на фактически принятое количество.Выясним, как отражается входящая корректировка на уменьшение в бухгалтерском учете. При уменьшении стоимости или объема поставки покупатель обязан восстановить излишне принятый к вычету НДС в Книге продаж (пп. 4 п. 3 ст. 170 НК РФ).
При этом формировать документ «Счет-фактура выданный» не требуется. В типовой «1С:Бухгалтерии 7.7» для этой цели используется документ Счет-фактура полученный, в котором взводится признак корректировочного документа и указывается отрицательная разница. При проведении такой документ делает запись в Книгу продаж с кодом вида операции (КВО) 18 и формирует проводку восстановления НДС (Дт 19.3 (76.ВА) - Кт 68.2 либо сторно Дт 68.2 - Кт 19.3).