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