При подготовке регламентированной отчетности бухгалтеры и расчетчики зарплаты могут столкнуться с ситуацией, когда форма «Расчет по страховым взносам» (РСВ) отказывается заполняться автоматически. Сразу после нажатия кнопки «Заполнить» программа прерывает процесс и выдает системное сообщение: «Во время заполнения отчета произошла ошибка: Ошибка при вызове метода контекста (Выполнить)». Разберем причины возникновения этой неполадки и подробно рассмотрим шаги по ее устранению.
Проанализируем механизм работы регламентированного отчета. В типовых конфигурациях 1С:Зарплата и Управление Персоналом 8 (редакция 2.5, начиная с версий 2.5.116 и 2.5.117) алгоритмы сбора и компоновки данных расчета по страховым взносам используют усовершенствованный синтаксис языка запросов (включая работу с временными таблицами, сложными соединениями и функциями группировки).
Если информационная база запускается на устаревших сборках технологической платформы (например, 8.2.14.528), движок СУБД платформы не может корректно интерпретировать обновленные синтаксические конструкции. В результате встроенный код программы падает на строке с вызовом метода Запрос.Выполнить().
Главным и наиболее надежным решением является приведение версии платформы в соответствие с требованиями конфигурации. Выполним следующие действия:
1С:Предприятие 8.2 (8.2.14.528)).Если платформа уже обновлена до актуальной версии (8.2.19 или 8.3), но отчет по-прежнему выдает ошибку при заполнении, рассмотрим сопутствующие факторы в учетных данных информационной базы:
Проверим регистр сведений Тарифы страховых взносов. В нем не должно быть разрывов в периодах действия тарифов организации, наложений дат или дублирующихся записей. Также проверим корректность настроек дополнительных тарифов для вредных и тяжелых условий труда.
Проанализируем периодические регистры сведений: гражданство физических лиц, сведения об инвалидности и статусы застрахованных лиц. Ошибки в датах действия этих статусов или наличие «битых» ссылок (объектов с наименованием <Объект не найден>) приводят к аварийному завершению выборки данных.
Нередко причиной сбоев временных таблиц становятся поврежденные временные файлы. Закроем 1С, удалим информационную базу из списка запуска и добавим ее заново, либо вручную очистим каталоги кэша 1cv8 в папках пользователя AppData\Local\1C и AppData\Roaming\1C.
В режиме Конфигуратор выполним проверку через меню Администрирование → Тестирование и исправление.... Отметим обязательные пункты: «Реиндексация таблиц информационной базы», «Проверка логической целостности» и «Проверка ссылочной целостности».
Для точного определения сбойного места откроем Журнал регистрации, установим отбор по событию со статусом «Ошибка» и изучим детальный стек вызовов. В описании ошибки будут указаны конкретный модуль, номер строки и текст проблемного запроса.
В подавляющем большинстве случаев своевременное обновление платформы до актуального релиза полностью устраняет падение метода Выполнить() и позволяет сформировать расчет по страховым взносам без ошибок.