Нередко при обновлении конфигураций (например, «Бухгалтерия предприятия 2.0») возникает требование разработчиков перейти на платформу 1С:Предприятие 8.3. Администратор или пользователь устанавливает новый клиентский дистрибутив 8.3, однако при попытке запустить информационную базу система все равно открывается в среде 8.2. Даже прямой запуск исполняемого файла 1cv8.exe непосредственно из каталога с версией 8.3 (например, C:\Program Files (x86)\1cv8\8.3.8.2054\bin) приводит либо к старту ветки 8.2, либо к ошибке. Проанализируем, почему возникает такое поведение и какие шаги необходимо предпринять для успешного перехода.
Причина автоматического переключения версии платформы
В клиент-серверной архитектуре платформы 1С действует принцип строгой синхронизации версий. Клиентское приложение и служба кластера серверов 1С должны иметь абсолютно одинаковый номер сборки (вплоть до последней цифры релиза). Выясним, как ведет себя система при запуске:
Пользователь запускает программу через общую программу запуска 1cestart.exe или напрямую через файл 1cv8.exe платформы 8.3.
Клиент обращается к серверу 1С, указанному в параметрах информационной базы.
Служба сервера сообщает клиенту номер установленной на сервере версии платформы. Если кластер функционирует под управлением ветки 8.2, клиентское приложение 8.3 не может продолжить сеанс напрямую.
Программа запуска ищет на рабочем месте подходящий клиент нужной версии 8.2 и автоматически передает управление ему. Если такая версия не установлена, система выдает критическую ошибку о несовпадении версий клиента и сервера.
Таким образом, одной установки клиента 8.3 на рабочей станции недостаточно, если сам кластер серверов продолжает работать на платформе 8.2. Разберем основные способы решения этой проблемы.
Способ 1. Параллельный запуск служб серверов 8.2 и 8.3 на одном физическом сервере
Если на сервере предприятия одновременно эксплуатируются базы, которые пока нельзя перевести на новую платформу, рассмотрим настройку параллельной работы двух служб серверов 1С на одной операционной системе. По умолчанию служба 1С занимает сетевые порты 1540 (главный агент), 1541 (менеджер кластера) и диапазон 1560:1591 (рабочие процессы). Чтобы запустить службу 8.3 параллельно со службой 8.2, необходимо сместить сетевые порты для новой службы.
Разберем по шагам создание второй службы через командную строку с помощью утилиты ragent.exe:
Определим диапазон свободных портов. В качестве стандартного смещения часто выбирают порты на единицу выше в первом разряде: 2540, 2541 и диапазон 2560:2591.
Зарегистрируем новую службу с указанием смещенных портов с помощью вызова утилиты со следующими параметрами:
Запустим созданную службу через оснастку управления службами операционной системы.
Откроем консоль администрирования кластера серверов 1С:Предприятия 8.3, создадим новое подключение к кластеру и укажем порт центрального сервера 2540.
Создадим в кластере 8.3 новую информационную базу и подключим ее к существующей базе на сервере СУБД.
В клиентском списке информационных баз отредактируем параметры подключения: укажем имя сервера вместе со смещенным портом менеджера кластера в формате ИмяСервера:2541.
Способ 2. Полный перевод сервера на платформу 8.3
Если необходимость удерживать базы на ветке 8.2 отсутствует, рассмотрим полный переход на платформу 8.3. Разберем последовательность действий:
Создадим резервную копию базы данных средствами СУБД (Microsoft SQL Server, PostgreSQL и др.).
Остановим и отключим службу сервера 1С:Предприятия 8.2.
Установим серверную часть платформы 8.3 со стандартными сетевыми портами.
В утилите администрирования кластера серверов 8.3 зарегистрируем новую информационную базу с теми же параметрами подключения к серверу СУБД, которые использовались ранее. Повторная загрузка базы через файл выгрузки не требуется — платформа 8.3 корректно подхватит существующую структуру таблиц.
Обновим ярлыки и настройки на клиентских компьютерах: теперь обращение по стандартному имени сервера без указания портов будет адресовано кластеру 8.3.
Особенности работы конфигураций поколения 8.2 под платформой 8.3
При переводе конфигураций предыдущего поколения (таких как «Бухгалтерия предприятия 2.0») на платформу 8.3 важно учесть технологические нюансы:
Режим совместимости: В свойствах конфигурации сохраняется установленный разработчиками режим совместимости (например, Версия 8.2.13 или Версия 8.2.16). Снимать режим совместимости вручную категорически запрещено, так как это нарушит работоспособность типового прикладного кода.
Режим запуска: Приложение будет продолжать работать в режиме «Обычное приложение» (толстый клиент), поскольку интерфейс таких конфигураций построен на базе обычных форм.
Лицензирование: Программные лицензии и аппаратные ключи защиты HASP универсальны для платформ 8.2 и 8.3. Приобретать отдельные серверные или клиентские лицензии для перехода на 8.3 не требуется.
Экстренное обновление через файловый режим
Если доступ к серверной инфраструктуре временно ограничен, а обновление конфигурации требуется выполнить срочно, применим временный обходной путь:
Выгрузим информационную базу в файл с расширением .dt через режим «Конфигуратор» под платформой 8.2.
Развернем полученную выгрузку в файловом варианте на локальном компьютере, где установлена клиентская платформа 8.3.
Запустим конфигуратор под платформой 8.3 и применим требуемое обновление конфигурации.
После обновления серверной части 1С загрузим обновленную базу обратно в клиент-серверный кластер.