Как запустить конфигурацию 1С, если она требует версию платформы выше установленной?

Программист 1С v8.3 (Управляемые формы) 1C:Бухгалтерия Бухгалтерский учет IT и автоматизация бизнеса
← На главную

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

Понимание механизма контроля версии платформы

Фирма «1С» внедряет контроль версии платформы не ради ограничения пользователей, а для обеспечения корректной работы функционала. В современных конфигурациях, построенных на БСП (Библиотеке стандартных подсистем), проверка выполняется при старте системы. Она считывает требования из модулей конфигурации или хранилищ настроек. Если текущая версия ниже требуемой, система блокирует вход. В последних релизах 1С стала «прятать» параметры проверки в Хранилище настроек пользователей, что усложняет поиск нужного кода через обычный глобальный поиск.

Шаг 1: Локализация проверки в отладчике

Для того чтобы принудительно пропустить проверку, нам нужно найти точку в коде, где инициируется завершение работы из-за несоответствия версии. Разберем по шагам процесс поиска:

  1. Запустите конфигурацию в режиме Отладка с подключением к серверу.
  2. Дождитесь появления сообщения об ошибке версии платформы.
  3. Используйте Замер производительности или просто пошаговую отладку в момент запуска системы, чтобы отследить, какой модуль вызывает метод завершения работы или вывода предупреждения.
  4. Обратите внимание на вызовы функций, связанных с проверкой совместимости или анализом параметров запуска.

Шаг 2: Создание обходного пути через расширение

Когда вы обнаружите место, где выполняется проверка, не стоит менять код самой конфигурации — это усложнит дальнейшие обновления. Лучшим решением будет использование Расширения конфигурации. Разберем создание такого расширения:

  1. Создайте новое расширение с назначением «Адаптация».
  2. В расширении переопределите метод, который выполняет проверку версии.
  3. Внедрите код, который принудительно возвращает «успешный» результат проверки, игнорируя реальную версию платформы.

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


// Пример логики в расширении для метода проверки версии
&Вместо("ПроверитьВерсиюПлатформы")
Процедура Расш_ПроверитьВерсиюПлатформы()
    // Игнорируем стандартную проверку
    Возврат; 
КонецПроцедуры

Обратите внимание: в последних версиях 1С данные настройки могут храниться в ХранилищеНастроек. В этом случае в расширении можно предусмотреть код, который программно очищает или сбрасывает значения этих настроек при инициализации системы.

Важные предупреждения о рисках

Необходимо осознавать, что использование подобных «костылей» — это временная мера. Разберем причины, почему это опасно:

Если вы применили расширение для временного доступа к работе, обязательно запланируйте обновление платформы до требуемой версии (например, до 8.3.22.2239) в ближайшее окно обслуживания. Помните, что лучший путь — это «закопать стюардессу» (отказаться от костылей) и привести инфраструктуру в соответствие с требованиями разработчика, как только работа будет стабилизирована.

Рассмотренный метод поможет вам избежать простоя в экстренной ситуации, однако всегда стремитесь к соблюдению требований Технологической платформы для обеспечения надежности ваших бизнес-процессов.

← На главную