Почему при обмене из УТ 10.3 в БП 2.0 документы реализации не проводятся из-за ошибок ГТД?

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

При организации обмена данными между конфигурациями «Управление торговлей 10.3» и «Бухгалтерия предприятия 2.0» специалисты часто сталкиваются с ситуацией, когда документы Реализация товаров и услуг успешно загружаются, но остаются в состоянии «не проведен». При попытке провести их вручную в информационной базе приемнике (БП 2.0) система выдает предупреждение: «Для номенклатуры "..." по счету ГТД определен остаток 0 ед.».

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

Анализ механизма ошибки: почему «тихо» не проводится документ?

Разберем ситуацию: когда вы нажимаете кнопку «ОК» в документе БП 2.0 вручную, система выводит предупреждение, но часто все равно записывает проведенный документ, если в настройках разрешены отрицательные остатки. Однако при автоматическом обмене используется программный метод Записать(РежимЗаписиДокумента.Проведение). В типовых правилах обмена встроен механизм проверки: если в процессе проведения возникли любые сообщения об ошибках или нехватке запасов, система устанавливает флаг Отказ = Истина. Это делается для того, чтобы не допустить рассинхронизации данных и появления «битых» остатков, которые потом крайне сложно выверять.

Ключевая проблема здесь кроется в забалансовом учете. В БП 2.0 учет импортных товаров ведется на специальном забалансовом счете ГТД. Проверка остатков по этому счету зачастую жестко прописана в коде и срабатывает даже тогда, когда общий контроль остатков по счету 41 отключен.

Решение 1: Проверка последовательности и времени документов

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

  1. Сравнение времени: Проверим время документов в БП 2.0 после обмена. Часто документы реализации из УТ 10.3 приходят со временем 23:59:59, но если поступление в этот же день было загружено позже или имеет такое же время, программа может не «увидеть» остаток.
  2. Перепроведение: Попробуем программно или вручную перепровести документы в правильной последовательности. Если после изменения времени документ проводится без ошибок — проблема была в хронологии.

Решение 2: Настройка параметров учета в Бухгалтерии

Выясним, разрешено ли в вашей базе БП 2.0 списание при отсутствии остатков. Хотя это и не рекомендуется для правильного налогового учета, иногда это единственный способ оперативно запустить обмен.

Перейдем в меню: Предприятие — Настройка параметров учета — Запасы. Убедимся, установлена ли галочка «Разрешить списание запасов при отсутствии остатков по данным учета». Если она снята, то любая нехватка на счетах (включая забалансовый счет ГТД) приведет к отказу в проведении при обмене.

Решение 3: Проверка данных в УТ 10.3 и сопоставление серий

В УТ 10.3 номера ГТД хранятся в справочнике СерииНоменклатуры. Рассмотрим, как эти данные попадают в БП 2.0:

  1. Если в УТ ведется учет по сериям, а в БП 2.0 — нет, то при обмене номер ГТД извлекается из серии и подставляется в табличную часть документа реализации.
  2. Если в БП 2.0 в карточке номенклатуры указана Страна происхождения, отличная от России, программа автоматически будет ожидать заполнения номера ГТД и наличия остатков по нему.
  3. Проверим поле Номер ГТД в документе реализации в БП 2.0. Если оно заполнено значением, которого нет в остатках на счете ГТД (например, из-за опечатки в УТ или если поступление этого ГТД еще не было выгружено в БП), проведение не состоится.

Решение 4: Программное игнорирование проверки остатков ГТД

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

Проанализируем общий модуль УправлениеЗапасами. Именно в нем находится функция, которая выполняет списание по счету ГТД. Конкретная точка отказа обычно находится здесь:


Процедура ПроведениеДокументаСписанияПоСчетуГТД(СтруктураШапкиДокумента, ТаблицаПоТоварам, НаименованиеДокумента) Экспорт
    // ... здесь идет запрос к остаткам счета ГТД ...
    // Если остатка недостаточно, выводится сообщение и может устанавливаться Отказ
КонецПроцедуры

Рассмотрим вариант обхода. Вместо удаления кода лучше добавить условие, которое будет пропускать проверку только в режиме загрузки данных:


Если Объект.ОбменДанными.Загрузка Тогда
    Возврат; // Пропускаем проверку при обмене
КонецЕсли;

Решение 5: Модификация правил обмена (КМД)

Самый правильный путь с точки зрения поддержки конфигурации — не править код БП 2.0, а настроить Правила обмена данными в конфигурации «Конвертация данных».

В правилах для документа РеализацияТоваровУслуг в обработчике «После загрузки» можно прописать попытку проведения документа с игнорированием ошибок. Это позволит документу «пытаться» провестись, не прерывая весь процесс загрузки пакета данных.

Пример кода для обработчика в правилах обмена:


Попытка
    Объект.Записать(РежимЗаписиДокумента.Проведение);
Исключение
    Сообщить("Документ " + Объект + " не проведен: " + ОписаниеОшибки());
    Объект.Записать(РежимЗаписиДокумента.Запись);
КонецПопытки;

Важное предостережение по налоговому учету

Необходимо помнить, что забалансовый счет ГТД напрямую влияет на формирование книги покупок и книги продаж. Если вы проигнорируете отсутствие остатков и проведете документ «в минус» по ГТД, при выгрузке отчетности по НДС возникнут разрывы. Налоговые органы могут выявить несоответствие номеров ГТД в цепочке поставок. Поэтому самым надежным решением всегда остается выверка приходных документов: убедитесь, что все поступления из УТ 10.3 в БП 2.0 приходят вовремя и с корректно заполненными номерами ГТД в сериях.

Подведем итог: если вы столкнулись с этой проблемой, сначала проверьте настройки параметров учета и хронологию документов. Если данные в порядке, но ошибка сохраняется из-за специфики учета ГТД в БП 2.0, используйте модификацию правил обмена или (в крайнем случае) вмешательство в общий модуль УправлениеЗапасами.

← На главную