При планировании обновления конфигураций 1С или развертывании баз на сервере часто возникает необходимость точно знать, какая минимальная версия технологической платформы требуется для конкретного релиза прикладного решения. Несоответствие версий может привести к ошибкам запуска, некорректной работе встроенных механизмов или невозможности применить обновление. Разберем основные способы выяснения системных требований конфигурации к платформе.
Каждый релиз конфигурации сопровождается файлом описания поставки, в котором разработчики 1С фиксируют точный номер версии платформы, необходимый для работы. Рассмотрим, как устроена структура путей к этим файлам на сервере обновлений:
HRM и номере релиза (например, 2_5_114_1) располагается файл ReadMe.txt.Accounting. Подставляя номер необходимой редакции и релиза (например, 3_0_55_16), можно обратиться напрямую к файлу ReadMe.txt.Comm/Platform с указанием четырехзначного номера версии (например, 8_0_5_42 или актуальных сборок 8.3) и файла V8Update.htm. Важно указывать полный номер сборки, так как сокращенные пути веб-сервером не обрабатываются.В начале файла ReadMe.txt всегда присутствует раздел с системными требованиями, где указан минимально допустимый релиз платформы для установки и корректного функционирования конфигурации.
Если дистрибутив или файл обновления уже скачан и установлен на компьютер, все необходимые данные находятся в локальной файловой системе в каталоге шаблонов (папка tmplts). Проанализируем, какие файлы содержат нужную информацию:
Если у нас есть доступ к информационной базе через Конфигуратор, выясним требования конфигурации напрямую из метаданных:
Версия 8.3.21 или Не использовать) определяет базовую версию платформы, механизмы которой задействованы в решении. Если запустить базу на платформе ниже указанной в режиме совместимости, запуск будет заблокирован.В конфигурациях, построенных на базе Библиотеки стандартных подсистем (БСП), встроен программный контроль соответствия релиза платформы. При старте системы выполняется проверка фактической версии через системный объект. Посмотрим на типовой пример реализации такой проверки:
ТекущаяВерсияПлатформы = СистемнаяИнформация.ВерсияПриложения;
МинимальнаяВерсия = "8.3.24.1342";
Если Не ПоддерживаетсяВерсияПлатформы(ТекущаяВерсияПлатформы, МинимальнаяВерсия) Тогда
ВызватьИсключение "Для работы конфигурации требуется версия платформы не ниже " + МинимальнаяВерсия;
КонецЕсли;
Если платформа пользователя устарела, конфигурация завершает работу и выводит диалоговое окно с указанием точной минимальной версии платформы, которую необходимо установить администратору.
Чтобы избежать ситуаций, когда база открывается не той версией платформы (что может вызвать необратимую конвертацию таблиц базы данных), зафиксируем версию платформы в параметрах запуска. Разберем, как это сделать:
8.3.24.1342 или 8.3.24).ibases.v8i в виде строки Version=8.3.24.1342, что гарантирует старт нужного исполняемого файла платформы.