При работе в системах на базе 1С, например в 1С:CRM, мы иногда сталкиваемся с ситуацией, когда Универсальный отчет или другой сложный аналитический инструмент отказывается открываться. Система при этом выдает сообщение, ссылающееся на недопустимое значение или «ошибку в параметре 2». Разберем подробно, почему возникает этот сбой, и посмотрим на все доступные способы очистки и сброса настроек для конкретного пользователя, чтобы вернуть функционал в рабочее состояние.
Почему возникает «ошибка в параметре 2» или недопустимое значение параметра?
Проанализируем основные причины, из-за которых сохраненные пользовательские настройки начинают конфликтовать с базой данных:
Последствия обновления 1С: Чаще всего настройки варианта отчета ломаются после обновления конфигурации или платформы. В новых релизах разработчики могут изменить метаданные объектов, а в сохраненных настройках у пользователя остаются старые параметры запросов. Система пытается загрузить старые данные из скрытого хранилища (часто в формате Base64), не находит нужных реквизитов и выдает ошибку параметров.
Удаленные значения (битые ссылки): В отборах или параметрах отчета (например, под внутренним индексом 2) мог быть сохранен конкретный элемент справочника или документ, который впоследствии был удален из базы. При попытке открыть отчет программа пытается подставить эту «битую ссылку», что неминуемо вызывает сбой.
Ошибки динамических списков: Иногда ошибка параметра возникает из-за некорректно сохраненных сортировок или группировок, если структура базы данных претерпела изменения.
Основной способ: Сброс настроек отчетов через настройки пользователя
Если отчет не открывается совсем, мы не сможем сбросить его из самого интерфейса отчета. В этом случае воспользуемся панелью администрирования. Разберем по шагам, как очистить проблемные настройки для конкретного сотрудника:
Перейдем в раздел Администрирование.
Выберем пункт Настройки пользователей и прав, а затем перейдем в справочник Пользователи.
Найдем в списке нужного пользователя, у которого воспроизводится ошибка, и откроем его карточку.
В верхней панели навигации формы (там, где расположены ссылки на основное, группы, права доступа) выберем пункт Настройки.
Откроем вкладку Настройки отчетов или Прочие настройки (в зависимости от версии конфигурации).
Найдем в списке Универсальный отчет и очистим связанные с ним записи. Зачастую именно очистка «Прочих настроек» возвращает отчету работоспособность.
Глубокая очистка через системные справочники и регистры
Если стандартный интерфейс не помог, посмотрим на проблему со стороны платформенных объектов. Настройки вариантов отчетов хранятся в специализированных регистрах и справочниках. Проанализируем, где можно удалить битые данные вручную:
Откроем справочник ВариантыОтчетов (в некоторых конфигурациях он имеет синоним Отчеты).
Проверим также справочник СохраненныеНастройки.
Заглянем в регистр сведений НастройкиВариантовОтчетов. Найдя там записи, относящиеся к проблемному отчету и пользователю, мы можем их удалить.
Дополнительные способы: локальный кэш и пользовательское меню
Если очистка системных настроек в базе не дала результата, выясним другие причины и применим альтернативные подходы:
Очистка кэша платформы 1С: Часто индивидуальные ошибки с отображением форм кроются во временных файлах на компьютере. Необходимо удалить временные папки профиля пользователя в директории AppData или запустить базу с ключом /ClearCache.
Сброс в форме отчета: Если сам интерфейс Универсального отчета все-таки открывается, а ошибка появляется только при попытке его сформировать, воспользуемся встроенной командой. Нажмем кнопку Ещё, затем выберем Стандартные настройки. Это мгновенно вернет параметры к заводским значениям.
Самостоятельная очистка пользователем: Пользователь может сам зайти в Главное меню программы -> Сервис и настройки -> Настройки -> Настройки пользователя (или Настройки формы), чтобы удалить данные, вызывающие конфликт.
Программный сброс настроек (для разработчиков)
Если мы работаем с конфигурациями, построенными на базе Библиотеки стандартных подсистем (БСП), мы можем принудительно очистить настройки программным путем. Для этого используется специальный экспортный метод. Посмотрим на пример кода:
// Пример вызова экспортной процедуры БСП для сброса настроек
МетаданныеОтчета = Метаданные.Отчеты.УниверсальныйОтчет;
Пользователь = Справочники.Пользователи.НайтиПоНаименованию("Иванов И.И.");
Если ЗначениеЗаполнено(Пользователь) Тогда
ВариантыОтчетов.СброситьПользовательскиеНастройки(МетаданныеОтчета, Пользователь);
КонецЕсли;
Передав в функцию СброситьПользовательскиеНастройки метаданные отчета или указав конкретного пользователя, мы программно зачистим все проблемные сохраненные значения, восстановив нормальную работу Универсального отчета в системе.