Как массово обновить номера ГТД в 1С:ERP в связи с новыми требованиями от 1 апреля 2024 года?

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

С 1 апреля 2024 года вступили в силу изменения, согласно которым в номерах ГТД (деклараций на товары) обязательным становится заполнение четвертого блока — порядкового номера товара из графы 32 декларации. Это требование критично для корректного формирования счетов-фактур, УПД и отчетности по прослеживаемым товарам. В системе 1С:ERP 2.5 (особенно ранних версий, таких как 2.5.8) номера ГТД хранятся не просто как реквизит документа, а как часть сложной аналитики в табличных частях ВидыЗапасов и регистрах накопления. В этой статье мы подробно разберем, как автоматизировать процесс приведения базы в соответствие с новыми нормами.

Анализ архитектуры хранения ГТД в 1С:ERP

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

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

Основная сложность заключается в том, что простое переименование элемента в справочнике НомераГТД не всегда решает проблему. Если одна декларация содержала 10 разных товаров, то теперь вместо одного элемента справочника вам может потребоваться десять разных (по одному на каждую позицию). Это означает, что в документах прошлых периодов нужно не просто обновить текст, а перевыбрать правильную ссылку на новый элемент справочника.

Метод 1: Программное переформирование ГТД в документах поступления

Разберем ситуацию, когда нам необходимо массово дополнить номера ГТД в документах ВводОстатков или ТаможеннаяДекларацияИмпорт. Мы можем использовать механизм расширения или внешнюю обработку для автоматизации создания новых элементов справочника НомераГТД с нужным "хвостом".

Рассмотрим пример кода для обработки строк в документе поступления, который программно создает новый номер ГТД на основании старого и номера позиции:


&НаСервере
Функция ЗаполнитьРазделГТДНаСервере(Раздел)
    УстановитьПривилегированныйРежим(Истина);
    Для Каждого ИдентификаторСтроки Из Элементы.СобственныеТовары.ВыделенныеСтроки Цикл
        Строка = Объект.Товары.НайтиПоИдентификатору(ИдентификаторСтроки);
        
        // Формируем новый строковый номер с учетом раздела (графы 32)
        НовыйНомер = "" + СокрЛП(Строка.НомерГТД.Код) + "/" + СокрЛП(Раздел);
        
        // Ищем, существует ли уже такой номер в справочнике
        ГТД = Справочники.НомераГТД.НайтиПоКоду(НовыйНомер);
        
        Если ГТД.Пустая() Тогда
            // Создаем новый элемент справочника, копируя основные свойства
            ГТДОбъект = Справочники.НомераГТД.СоздатьЭлемент();
            ЗаполнитьЗначенияСвойств(ГТДОбъект, Строка.НомерГТД, , "ПометкаУдаления,Родитель,Владелец");
            ГТДОбъект.Код = НовыйНомер;
            ГТДОбъект.Записать();
            ГТД = ГТДОбъект.Ссылка;
        КонецЕсли;
        
        // Устанавливаем новую ссылку в документ
        Строка.НомерГТД = ГТД;
    КонецЦикла;
    УстановитьПривилегированныйРежим(Ложь);
КонецФункции

Этот подход позволяет быстро актуализировать входящие документы. Однако помните, что после изменения ГТД в поступлении, остатки на складе "разъедутся" с документами расхода, которые уже были проведены по старым номерам.

Метод 2: Использование доп. свойства ПерезаполнитьВидыЗапасов

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

Проанализируем следующий алгоритм обновления документа:


ДокументОбъект = СсылкаНаДокумент.ПолучитьОбъект();
// Устанавливаем флаг для принудительного перезаполнения видов запасов
ДокументОбъект.ДополнительныеСвойства.Вставить("ПерезаполнитьВидыЗапасов", Истина);
// Проводим документ - система сама подберет актуальные ГТД из остатков
ДокументОбъект.Записать(РежимЗаписиДокумента.Проведение);

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

Метод 3: Типовой помощник исправления остатков

Если в вашей базе возникли отрицательные остатки по конкретным номерам ГТД (например, старый номер ушел в минус, а новый висит в плюсе), рассмотрим типовой инструмент 1С:ERP — "Помощник исправления остатков организаций". Найти его можно в разделе "Финансовый результат и контроллинг" — "Обслуживание" — "Регламентные операции".

Посмотрим на шаги работы с этим инструментом:

  1. Запустите помощник и выберите организацию и период.
  2. Система проанализирует регистр ТоварыОрганизаций на наличие "пересортицы" по ГТД.
  3. Помощник предложит автоматически создать документы корректировки или перераспределить запасы таким образом, чтобы схлопнуть минусы.
  4. Это наиболее безопасный способ с точки зрения методологии 1С, так как он минимизирует прямое вмешательство в старые документы.

Рекомендации по работе с прослеживаемыми товарами

Проанализируем ситуацию с точки зрения прослеживаемости. Для товаров, подлежащих прослеживаемости, номер ГТД является основой для РНПТ. Если вы работаете через ЭДО, система при отправке УПД будет проверять формат номера. Если четвертый блок отсутствует, оператор ЭДО или приемная сторона могут отклонить документ.

В новых релизах 1С:ERP (начиная с 2.5.12) реализован функционал автоматического разделения декларации на позиции. Если вы работаете на более старой версии (2.5.8 и ниже), мы рекомендуем:

Подводя итог, можно сказать, что решение проблемы с ГТД от 01.04.2024 требует комплексного подхода: сначала актуализируются данные в приходных накладных и остатках (через создание новых элементов справочника НомераГТД), а затем каскадно обновляются расходные документы с помощью программного перезаполнения ВидовЗапасов или использования типового помощника исправления остатков.

← На главную