Каждый администратор или разработчик 1С хотя бы раз сталкивался с ситуацией, когда система при запуске выдает абсолютно нелогичные ошибки. Одной из таких проблем является внезапное требование программы установить несуществующую, «космическую» версию платформы, например, 98.55.43, 99.99.99 или аналогичную. При этом обычные пользователи теряют доступ к базе данных, а попытки установить самые свежие официальные релизы платформы не приносят никакого результата.
В этой статье мы подробно разберем, почему возникает этот сбой, проанализируем внутренние механизмы работы конфигурации, которые приводят к блокировке, и рассмотрим пошаговые методы решения проблемы — от простых манипуляций в Конфигураторе до написания обходного кода и использования механизмов расширений.
Для начала важно понять ключевой технологический факт: платформа 1С:Предприятие сама по себе никогда не выдаст системную ошибку с требованием такой версии. Данное сообщение генерируется не технологической платформой, а программным кодом самой конфигурации (как правило, построенной на базе БСП — Библиотеки стандартных подсистем или БИП — Библиотеки интернет-поддержки).
Давайте проанализируем основные причины, из-за которых в вашей базе может прописаться такая «версия-призрак»:
98.55.43.Поскольку проверка версии платформы выполняется исключительно при запуске клиентского приложения (в режиме «1С:Предприятие»), Конфигуратор этой блокировке не подвержен. Мы можем без препятствий запустить базу в режиме конфигуратора под любой установленной платформой и приступить к устранению проблемы.
Ниже мы разберем по шагам четыре действенных способа решения этой проблемы.
Если конфигурация позволяет запустить сеанс администратора или у вас есть возможность временно отключить проверку требований, самым простым решением будет ручная очистка или изменение проблемной константы.
Рассмотрим, как это сделать, если база все же дает зайти под учетной записью с полными правами (или если мы запускаем систему в аварийном режиме):
МинимальнаяВерсияПлатформыРекомендуемаяВерсияПлатформы98.55.43, очистим это поле или заменим его на реально существующую рабочую версию (например, 8.3.22.1709 или ту, под которой вы сейчас работаете).Если база полностью заблокирована для запуска в режиме «1С:Предприятие» и первый способ применить невозможно, воспользуемся механизмом расширений. Это самый безопасный и «чистый» способ, поскольку он не требует снимать основную конфигурацию с поддержки и вносить изменения в типовой код.
Выполним следующие шаги:
ОбходПроверкиПлатформы. Назначение выберем «Адаптация».ОбщегоНазначенияПереопределяемый.
&После("ПриОпределенииОбщихПараметровБазовойФункциональности")
Процедура ИмяРаш_ПриОпределенииОбщихПараметровБазовойФункциональности(ОбщиеПараметры) Экспорт
СистемнаяИнформация = Новый СистемнаяИнформация;
ТекущаяВерсия = СистемнаяИнформация.ВерсияПриложения;
// Принудительно устанавливаем текущую версию платформы в качестве требуемой
ОбщиеПараметры.Вставить("МинимальнаяВерсияПлатформы", ТекущаяВерсия);
ОбщиеПараметры.Вставить("РекомендуемаяВерсияПлатформы", ТекущаяВерсия);
КонецПроцедуры
После того как работоспособность системы будет восстановлена, вы сможете спокойно зайти в константы (как описано в Способе 1), очистить неверные данные, а затем отключить или полностью удалить созданное расширение.
Если конфигурация вашей базы данных уже частично или полностью снята с поддержки, и вы не хотите связываться с механизмом расширений, проблему можно решить с помощью временного кода в модуле приложения.
Рассмотрим этот алгоритм по шагам:
ПриНачалеРаботыСистемы. Если ее нет, создадим ее.
Процедура ПриНачалеРаботыСистемы()
// Временный код для очистки некорректных версий платформы
Попытка
Константы.РекомендуемаяВерсияПлатформы.Установить("");
Константы.МинимальнаяВерсияПлатформы.Установить("");
ЗаписьЖурналаРегистрации("ОбходОшибки", УровеньЖурналаРегистрации.Информация,,, "Константы версий успешно очищены.");
Исключение
ЗаписьЖурналаРегистрации("ОбходОшибки", УровеньЖурналаРегистрации.Ошибка,,, ОписаниеОшибки());
КонецПопытки;
КонецПроцедуры
Иногда даже после ручной очистки констант ошибка может повторяться. Это связано с тем, что некорректные метаданные могут кэшироваться локально на компьютере пользователя или сервере 1С:Предприятия.
Чтобы окончательно закрепить результат, выполним комплексную очистку системы:
%userprofile%\AppData\Local\1C\1Cv8%userprofile%\AppData\Roaming\1C\1Cv88e029ba3-818a-4467...). Это сбросит кэшированные настройки и заставит платформу пересчитать параметры конфигурации при следующем запуске.
Проанализировав все вышеописанные методы, можно сделать вывод: паниковать при возникновении ошибки с версией 98.55.43 не стоит. Это классическая программная коллизия, которая легко устраняется силами администратора или программиста через инструменты Конфигуратора без потери данных и долгого ожидания технической поддержки.