Почему не проводится ГТД по импорту в БП 2.0 и как исправить ошибку пустого счета-фактуры в журнале

Программист 1С v8.3 (Обычные формы) 1C:Бухгалтерия Налоговый учет
← На главную

При оформлении импортных операций в конфигурации «Бухгалтерия предприятия 2.0» пользователи часто сталкиваются с блокирующей ошибкой при попытке провести документ ГТД по импорту. Система выдает сообщение: «Запись не верна! Значение поля "Счет-Фактура" не может быть пустым!», ссылаясь на регистр сведений ЖурналУчетаСчетовФактур. Ситуация осложняется тем, что в ошибке часто фигурирует странная дата — 01.04.2019, хотя сам документ может быть оформлен значительно позже.

В этой статье мы подробно разберем внутреннюю логику работы документа, проанализируем программный код запроса, формирующего движения, и выясним, какие именно данные в пользовательском интерфейсе приводят к такому сбою.

Анализируем причину возникновения ошибки

Для начала выясним, почему система требует заполнения поля Счет-Фактура в документе, который сам по себе не является счетом-фактурой. Согласно законодательству РФ, при импорте товаров из стран, не входящих в ЕАЭС, роль счета-фактуры для книги покупок выполняет именно таможенная декларация (ГТД). В 1С:БП 2.0 для корректного построения отчетности по НДС документ ГТД по импорту должен создать техническую запись в регистр Журнал учета счетов-фактур, где в качестве ссылки на счет-фактуру он указывает самого себя.

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

Проанализируем фрагмент запроса, который собирает данные для формирования записей в журнале:


ВЫБРАТЬ
    Реквизиты.Период КАК Период,
    Реквизиты.Ссылка КАК Регистратор,
    Реквизиты.Организация КАК Организация,
    ВЫБОР
        КОГДА ТаблицаПоставщик.Посредник = ЗНАЧЕНИЕ(Справочник.Контрагенты.ПустаяСсылка)
            ТОГДА ТаблицаПоставщик.Поставщик
        ИНАЧЕ ТаблицаПоставщик.Посредник
    КОНЕЦ КАК Контрагент,
    "" КАК КППКонтрагента,
    Реквизиты.Ссылка КАК СчетФактура,
...

Как мы видим, поле СчетФактура заполняется из временной таблицы Реквизиты.Ссылка. Однако данные в итоговую выборку попадают только при условии успешного соединения с временной таблицей ТаблицаПоставщик. Если эта таблица оказывается пустой, итоговая выборка не возвращает строк, либо возвращает некорректные данные, что приводит к ошибке при записи набора записей в регистр.

Разбираем проблему с датой 01.04.2019

Многих сбивает с толку дата 01.04.2019 в тексте ошибки. Это не ошибка в ваших данных, а «жесткая» граница в программном коде 1С. Именно с этой даты вступили в силу изменения в постановление Правительства №1137, касающиеся правил ведения журнала учета счетов-фактур. В коде проведения документа ГТД по импорту существует проверка:

И Реквизиты.Период >= ДАТАВРЕМЯ(2014, 10, 1) (для старых периодов)

Система пытается сопоставить данные документа с требованиями актуального законодательства. Если алгоритм формирования временных таблиц дает сбой, механизмы проверки НДС могут «сваливаться» в обработку исключений, подставляя граничные даты периодов, по которым не удалось получить четких данных из запроса.

Решение 1: Проверка заполнения Документа партии

Наиболее частая причина «пустого счета-фактуры» кроется в табличной части «Товары». Посмотрим на структуру формирования временной таблицы ТаблицаПоставщик в запросе:


ВЫБРАТЬ ПЕРВЫЕ 1
    ...
ПОМЕСТИТЬ ТаблицаПоставщик
ИЗ
    ТоварыДокумента КАК ТоварыДокумента
        ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ПоступлениеТоваровУслуг КАК ПоступлениеТоваровУслуг
        ...
        ПО ТоварыДокумента.ДокументПартии = ПоступлениеТоваровУслуг.Ссылка

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

Что нужно сделать:

  1. Откроем документ ГТД по импорту на вкладке Товары.
  2. Проверим колонку Документ партии для каждой строки в каждом разделе ГТД.
  3. Убедимся, что выбранные документы Поступление товаров и услуг проведены и не помечены на удаление.
  4. Если вы используете специфические схемы (например, поступление по ордерной схеме), убедитесь, что в качестве партии выбран именно финансовый документ поступления.

Решение 2: Проверка вида договора с контрагентом

Вторая распространенная причина связана с настройкой договоров. Для работы документа ГТД по импорту необходимо соблюдение баланса между договором с таможней и договором с иностранным поставщиком.

Проанализируем ситуацию: документ ГТД обычно оформляется на таможню (или таможенного брокера), где вид договора должен быть Прочее. Однако товары, указанные в ГТД, ссылаются на документы поступления от иностранного поставщика, где вид договора — С поставщиком.

Важные моменты:

Решение 3: Очистка флагов в Поступлении товаров и услуг

Иногда пользователи пытаются «помочь» системе и на вкладке Счет-фактура в документе поступления ставят галочку Предъявлен счет-фактура. Разберем, почему при импорте этого делать нельзя.

При импорте из «дальнего зарубежья» поставщик не выставляет счет-фактуру российского образца. НДС платится на таможне. Если в ПТУ поставить признак предъявления счета-фактуры, система будет ожидать ввода отдельного документа Счет-фактура полученный. При проведении ГТД возникнет конфликт: система увидит, что по данной партии уже ожидается или зафиксирован счет-фактура от поставщика, и «запутается» в том, что именно регистрировать в Журнале учета счетов-фактур.

Инструкция:

  1. Зайдем в документ Поступление товаров и услуг, который является базовым для нашей ГТД.
  2. Перейдем на вкладку Счет-фактура (или проверим гиперссылку внизу).
  3. Снимем флаг Предъявлен счет-фактура и удалим номер/дату, если они были введены.
  4. Сохраним и перепроведем документ поступления, а затем попробуем провести ГТД.

Решение 4: Техническая проверка целостности базы

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

Рассмотрим шаги по очистке:

  1. Попробуем полностью распровести документ ГТД.
  2. С помощью консоли запросов или обработки «Запросы к регистрам» проверим наличие записей в регистре Журнал учета счетов-фактур по данному документу. Если записи остались после распроведения — их нужно удалить программно.
  3. Выполним Тестирование и исправление информационной базы (через конфигуратор) с включенными опциями «Проверка логической целостности» и «Очистка ссылок на несуществующие объекты».

Подводя итог, можно сказать, что в 90% случаев проблема решается заполнением колонки «Документ партии» в табличной части товаров ГТД. Именно это поле является «ключом» для соединения всех временных таблиц в запросе проведения. Без него ссылка на сам документ ГТД не попадает в итоговый набор записей регистра, что и вызывает ошибку пустого значения счета-фактуры.

← На главную