После проведения планового обновления конфигурации 1С:Управление производственным предприятием (УПП) до версии 1.3.176.1 многие пользователи и технические специалисты столкнулись с неприятной ситуацией: ранее созданные и сохраненные регламентированные отчеты по бухгалтерской отчетности (за 2020, 2021 и более ранние годы) перестали открываться. При попытке доступа к ним система может выдавать ошибку либо просто игнорировать действие пользователя. В этой статье мы подробно разберем причины возникновения данной проблемы и рассмотрим шаги по её устранению.
Прежде всего, выясним причину такого поведения системы. Обновление 1.3.176 стало знаковым для блока регламентированной отчетности, так как в него были внедрены масштабные изменения внутреннего кода. Это было необходимо для поддержки новых форматов представления отчетности за 2021 год. Однако такие изменения затронули механизмы сопоставления данных старых периодов с новыми экранными формами.
Рассмотрим основные технические факторы:
Поле объекта не обнаружено.РегламентированнаяОтчетность. Система ошибочно пыталась применить алгоритмы обработки данных 2021 года к архивным документам за 2019–2020 годы.PDF417. Если в системе установлена устаревшая версия этой компоненты, инициализация формы отчета может аварийно завершаться.Разберем самый правильный и «цивилизованный» способ решения. Поскольку проблема в релизе 1.3.176.1 носила массовый характер, фирма «1С» оперативно выпустила исправления в виде патчей (пакеты .efd). Эти патчи позволяют исправить программный код конфигурации «на лету», не дожидаясь выхода следующего полного релиза.
Для решения проблемы нам необходимо проверить наличие установленных патчей в разделе Администрирование — Обслуживание — Обновление программы — Установленные исправления (патчи). Если патча для исправления бухгалтерской отчетности нет, его следует загрузить через сервис интернет-поддержки или установить вручную, скачав с портала ИТС.
Проанализируем системные требования. Новые механизмы регламентированной отчетности в УПП предъявляют повышенные требования к версии технологической платформы. Для корректной работы релизов ветки 1.3.176 требуется версия платформы 1С:Предприятие не ниже 8.3.17.1851.
Если ваша база работает на старых версиях платформы (например, 8.3.12 или 8.3.14), то при открытии сложных управляемых или обычных форм отчетов могут возникать непредсказуемые сбои. Рекомендуем выполнить обновление платформы до актуальных сборок веток 8.3.18, 8.3.21 или выше, предварительно ознакомившись с рекомендациями для конкретного релиза УПП.
Часто проблема кроется не в самом коде, а в некорректном обновлении локальных данных на компьютере пользователя. Рассмотрим, как это исправить:
%AppData%\1C\1Cv8 и %LocalAppData%\1C\1Cv8.Тестирование и исправление. Нам обязательно нужно выбрать пункты «Проверка логической целостности» и «Реиндексация таблиц». Это поможет восстановить связи в таблицах, где хранятся данные регламентированных отчетов (параметры и сохраненные настройки).Если отчеты нужно открыть «здесь и сейчас», а патчи не помогают, можно воспользоваться методом, предложенным на форуме: загрузкой объекта отчета из предыдущего, стабильного релиза (1.3.175.1). Рассмотрим, как это сделать программно или через Конфигуратор:
Выясним, какой именно объект отвечает за отчетность. Это может быть внешний отчет или объект в дереве метаданных. Если мы решим заменить код в конфигурации, это можно сделать через сравнение и объединение с конфигурацией старого релиза, выбрав только конкретный отчет БухгалтерскаяОтчетность (или БухгалтерскаяОтчетность2011, в зависимости от периода).
Пример анализа кода, который может вызывать ошибку:
// В модуле отчета может быть некорректное обращение к параметрам
Попытка
ВерсияФормы = СтруктураРеквизитов.Версия;
Исключение
// В релизе 1.3.176.1 здесь мог отсутствовать перехват ошибки
ВерсияФормы = "Неопределено";
КонецПопытки;
Используя этот метод, мы фактически возвращаем старую логику обработки данных, которая «знает», как работать с архивными записями, и не пытается применять к ним новые правила 2021 года.
Важно отметить, что вышедший следом релиз 1.3.176.2 позиционировался как исправляющий ошибки. Однако, как показывает практика, если документ был открыт или пересохранен в «битом» релизе 1.3.176.1, его внутренняя структура в базе данных (в хранилище значений) могла повредиться. В таких случаях даже после обновления до 1.3.176.2 отчет может продолжать выдавать ошибку.
В этой ситуации рекомендуется:
Таким образом, мы выяснили, что проблема носит комплексный характер и связана как с качеством самого релиза, так и с требованиями к программному окружению. Последовательное применение патчей и обновление платформы в большинстве случаев полностью устраняют проблему открытия регламентированных отчетов.