Ошибка «Метод объекта не обнаружен (ЗаполнитьОтчетНДСФормаОтчета2021Кв3)» в 1С:УПП: как исправить и правильно обновить отчетность по НДС

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

При подготовке отчетности по НДС за 3 квартал 2021 года (и в последующих периодах при аналогичных обстоятельствах) пользователи конфигурации «Управление производственным предприятием» (УПП), редакция 1.3, столкнулись с критической ошибкой. При попытке заполнить декларацию система выдает сообщение: {ОбщийМодуль.ЗаполнениеРегламентированнойОтчетностиСервер.Модуль(30)}: Метод объекта не обнаружен (ЗаполнитьОтчетНДСФормаОтчета2021Кв3). Рассмотрим подробно причины возникновения этой ситуации и разберем по шагам, как восстановить работоспособность системы.

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

Проанализируем ситуацию: ошибка возникает из-за того, что в общем модуле УчетНДСФормированиеОтчетности отсутствует необходимая экспортная процедура, хотя вызов её в коде ЗаполнениеРегламентированнойОтчетностиСервер уже прописан. Выясним причину, по которой модуль не обновился корректно. Чаще всего это происходит в кастомизированных (измененных) конфигурациях. Если в модуль ранее вносились любые доработки (даже незначительные изменения в комментариях или мелкие правки логики), при автоматическом обновлении через «Поддержку» система может пропустить обновление этого объекта, если настройки сравнения и объединения выставлены неверно.

Особое внимание стоит уделить фильтрам в окне сравнения конфигураций. Рассмотрим типичную ошибку администратора: использование режима «Показывать отличия новой конфигурации поставщика от старой конфигурации поставщика». При таком фильтре, если ваш модуль помечен как измененный относительно старой версии поставщика, новые методы могут просто не отобразиться в дереве изменений, и вы их случайно пропустите, не проставив «галочку» для объединения.

Восстановление отсутствующего кода

Разберем, как принудительно добавить недостающий метод. В корректном релизе (начиная с 1.3.167.1) в модуле УчетНДСФормированиеОтчетности должна присутствовать следующая структура:


Процедура ЗаполнитьОтчетНДСФормаОтчета2021Кв3(ПараметрыЗаполненияОтчета) Экспорт
    
    ПараметрыЗаполненияОтчета.Вставить("ПравилаЗаполнения", "2021Кв3");
    ЗаполнитьДекларациюНДС(ПараметрыЗаполненияОтчета);
    
КонецПроцедуры

Для исправления выполним следующие действия:

  1. Откроем конфигуратор и запустим сравнение основной конфигурации с конфигурацией поставщика (или файлом .cf актуального релиза).
  2. Найдем общий модуль УчетНДСФормированиеОтчетности.
  3. Снимем фильтры, скрывающие совпадающие объекты, и убедимся, что новая процедура отмечена для переноса в основную конфигурацию.
  4. Если вы не хотите полностью заменять свой модуль модулем поставщика, просто скопируйте текст процедуры ЗаполнитьОтчетНДСФормаОтчета2021Кв3 вручную и вставьте его в конец модуля, не забыв добавить ключевое слово Экспорт.

Проблема версии платформы и синтаксические ошибки

Проанализируем еще один важный аспект. Даже если код физически присутствует в модуле, он может не работать из-за несовместимости с версией платформы 1С:Предприятие. Начиная с отчетных периодов 2021 года, разработчики УПП внедрили механизмы, использующие новые типы данных. Например, может возникнуть ошибка при компиляции кода, содержащего Тип("ФормаКлиентскогоПриложения").

Этот тип появился в платформе версии 8.3.15. Если ваша рабочая база запущена на старой платформе (например, 8.3.10), сервер 1С не сможет скомпилировать модуль, и система выдаст ошибку о том, что метод не обнаружен, так как весь модуль «вылетит» из компиляции. Посмотрим на рекомендации:

Особенности отчетности по НДС с 3 квартала 2021 года

Выясним, почему нельзя просто «подменить» вызов новой процедуры старой (например, ЗаполнитьОтчетНДСФормаОтчета2020Кв4). С 1 июля 2021 года вступили в силу изменения, связанные с национальной системой прослеживаемости товаров (Приказ ФНС от 26.03.2021 № ЕД-7-3/228@). Даже если ваша организация не занимается прослеживаемыми товарами, формат декларации изменился для всех:

Фантомные различия в справочной информации

Посмотрим на ситуацию, когда при обновлении постоянно возникают различия в «Справочной информации» (Help) объектов, даже если вы их только что объединили. Рассмотрим техническую причину: это связано с тем, что разные версии платформы по-разному обрабатывают и сжимают HTML-контент справок. При сравнении на уровне бинарных данных возникают отличия. Чтобы это не мешало работе, рекомендуется при обновлении один раз принудительно принять изменения поставщика для всех разделов справки, предварительно убедившись, что вы не писали туда собственные инструкции для пользователей.

Итоговый алгоритм действий

Чтобы окончательно решить проблему и избежать её в будущем, придерживаемся следующего плана:

  1. Обновляем платформу до актуальной (не ниже 8.3.17).
  2. Очищаем серверный кэш, так как описание методов объектов часто кэшируется, и даже после исправления кода ошибка может сохраняться.
  3. При обновлении конфигурации всегда используем режим «Сравнить, объединить с конфигурацией из файла», внимательно проверяя модули, в которых есть ваши доработки, чтобы не потерять новые процедуры от поставщика.
  4. После внесения правок обязательно выполняем «Проверку конфигурации» (Меню Конфигурация — Проверка конфигурации) с включенным флажком «Проверка синтаксиса», чтобы убедиться, что все модули компилируются без ошибок.
← На главную