Обновили сервер 1С, а утром ошибка версий клиента: разбор по часам
Ошибка «Несоответствие версий клиента и сервера» появляется, когда платформа 1С на рабочем месте и на сервере отличается по релизу: 8.3.22 против 8.3.25. Как правило, совпадать должны первые три числа. Лечится двумя путями: поставить клиентам ту же платформу, что стоит на сервере, или вернуть сервер на прежнюю. Чаще правильнее подтянуть клиентов.
🌙 Понедельник, 22:00: обновление прошло без ошибок
Возьмём типичный сценарий. Администратор обновил платформу на сервере 1С с 8.3.22 до 8.3.25. Установщик отработал, служба «Агент сервера 1С:Предприятия» поднялась, кластер виден в консоли. Админ открыл базу со своего компьютера, где уже стояла 8.3.25, увидел рабочий стол и закрыл ноутбук.
Проверка была честной, но проверяла не то. Он зашёл с единственной машины, на которой версии совпали. Остальные рабочие места и терминальный сервер по-прежнему запускали 8.3.22, поэтому утром всё и встало.
☕ Вторник, 8:40: бухгалтерия не открывает базу
Главный бухгалтер запускает 1С. Вместо окна входа появляется сообщение «Несоответствие версий клиента и сервера» и два номера платформы. Через несколько минут та же картинка у склада и отдела продаж. Кто-то звонит админу со словами «1С сломалась».
Сервер при этом жив. Клиент и сервер обмениваются данными по внутреннему протоколу, а он меняется от релиза к релизу, поэтому клиент 8.3.22 не работает с сервером 8.3.25. В обратную сторону так же: свежий клиент не подключится к серверу на старой платформе. Четвёртое число, номер сборки, обычно не мешает, но держать его одинаковым проще, чем потом искать причину.
Теперь о ставке. Пока версии не совпадают, в базу не входят все, у кого клиент остался старым. Если вторник пришёлся на день сдачи отчётности, бухгалтерия сидит без данных, а срок не сдвигается. Склад не оформляет отгрузки, менеджеры не выставляют счета, а водитель стоит у ворот без накладной. Сотрудники на окладе простаивают, и всё это время админ ищет, где именно разошлись версии.
🔍 8:55: где именно версии разошлись
Текст ошибки называет обе версии. Запишите их, прежде чем что-то переустанавливать: по ним видно, кто отстал, клиент или сервер. Дальше ищем, откуда у клиента взялась старая платформа. Мест обычно четыре.
- ✓Ярлыки и стартер. Ярлык или запись в списке баз запускает платформу по конкретному пути. Новая версия ставится рядом со старой, и запись продолжает открывать старую. В свойствах базы в стартере можно указать нужный релиз, тогда запустится установленная платформа этого релиза.
- ✓Терминальный сервер. Клиент 1С стоит на сервере удалённых рабочих столов, люди подключаются к нему по RDP. Кластер 1С обновили, а терминальную ферму нет, и ошибка появляется у всех сразу.
- ✓Веб-публикация. Браузерный клиент работает через модуль расширения веб-сервера, который подключается при публикации базы. После смены платформы публикацию нужно выполнить заново, иначе браузер покажет ту же ошибку версий.
- ✓Роботы и обмены. Обмен с сайтом, интеграции и регламентные скрипты подключаются через COM-соединение, а оно зарегистрировано в системе от конкретной версии платформы. Ошибку видит не человек, а журнал, поэтому о ней узнают, когда сайт вторые сутки показывает вчерашние остатки.
Пятый случай встречается в кластерах из нескольких рабочих серверов: обновили один узел, второй забыли. Ошибка тогда плавающая, сеанс попадает то на новый узел, то на старый, и воспроизвести её трудно.
⚖️ 9:20: подтянуть клиентов или откатить сервер
Выбор зависит от двух вещей: сколько времени осталось до критичной операции и что уже успели сделать с базой. Три рабочих варианта собраны в таблице.
| Вариант | Что делаем | Когда подходит | Чем рискуем |
|---|---|---|---|
| Подтянуть клиентов к серверу | Ставим платформу серверного релиза на рабочие места и терминальный сервер, правим ярлыки и стартер | Рабочих мест немного или есть терминальный сервер, а конфигурация уже требует новую платформу | Часть машин, например ноутбуки удалённых сотрудников, останется на старой версии, и ошибка вернётся у них |
| Вернуть сервер на прежнюю платформу | Переключаем службу «Агент сервера» на ragent.exe старой версии, возвращаем публикации и COM | До критичной операции остаются часы, клиентов много, обновить всех не успеть | Базу уже открывали новой платформой, старая может её не принять. Проверяйте на копии |
| Перевести людей в терминальную сессию или веб-клиент | Клиент 1С остаётся только на сервере, на рабочих местах хватает RDP-клиента или браузера | Рабочих мест много, парк разный, часть людей на удалёнке | Нужен терминальный сервер с запасом по памяти, в веб-клиенте часть функций ограничена |
В большинстве случаев работает первый вариант: сервер уже обновлён, конфигурация под него настроена, и клиентов проще подтянуть, чем возвращать всё обратно. Откат оправдан под жёсткий дедлайн, и делать его нужно целиком: вместе с сервером возвращаются публикация и COM-регистрация, иначе вы получите ту же ошибку с другой стороны.
Заблуждение: режим совместимости всё уладит
Первая мысль после ошибки версий: выставить в конфигураторе режим совместимости с прежней платформой. Это не помогает. Режим совместимости говорит конфигурации, как вести себя на новой платформе: какие механизмы включать и как считать. Старый клиент он разговаривать с новым сервером не научит. Клиент и сервер по-прежнему должны быть одного релиза, что бы ни стояло в свойствах конфигурации.
У режима другая задача: он позволяет обновить платформу и отложить обновление конфигурации, пока не вышел нужный релиз. Из-за этого платформа на сервере нередко уходит вперёд, а клиенты остаются позади.
🛠 11:00: порядок исправления
Вот последовательность, в которой ошибку удаётся закрыть без повторных заходов.
- ✓Сделайте резервные копии баз, прежде чем менять что-либо на сервере. Копия нужна и для отката, и для проверки, примет ли старая платформа базу.
- ✓Запишите обе версии из текста ошибки. Если версия клиента ниже, обновляем клиентов, если выше, сервер.
- ✓Откройте список служб на сервере и посмотрите, из какой папки запущен «Агент сервера 1С:Предприятия». В пути к ragent.exe виден номер платформы, так вы убедитесь, что сервер работает на той версии, которую вы считаете.
- ✓Установите платформу серверного релиза на терминальный сервер и рабочие места. Старые версии не удаляйте, пока все не вошли в базу: они нужны для отката.
- ✓Поправьте ярлыки и записи в стартере, чтобы они указывали на нужный релиз. Проверьте, что на терминальном сервере не осталось ярлыков с прямым путём к старой папке.
- ✓Переопубликуйте базы на веб-сервере и перерегистрируйте COM-компоненту нужной версии на машинах, где работают роботы обмена.
- ✓Проверьте вход с рабочих мест разных отделов, откройте базу в браузере и запустите обмен вручную. Только после этого сообщайте, что всё работает.
Если сервер собирал сотрудник, который давно ушёл, а документации нет, разбор занимает дольше самого исправления. Привести в порядок службу кластера, публикации и регистрацию COM мы можем как настройку сервера 1С.
🔁 Как обновление перестаёт ломать утро
Версия платформы живёт сразу в пяти местах, и ни одно из них не следит за остальными. Невнимательность админа тут почти ни при чём. Поэтому перед обновлением выпишите список: где запускается клиент, где стоит веб-публикация, какие роботы ходят в базу, сколько узлов в кластере. И обновляйте всё из списка в одно окно, а не по мере того, как вспомнится.
Три привычки окупаются быстро. Держите прежнюю платформу на диске сервера хотя бы пару недель, она нужна для отката. Проверяйте вход не с админской машины, а с рабочего места рядового пользователя. И поднимайте платформу тогда, когда её требует конфигурация: у каждого релиза 1С:ERP есть минимальная версия платформы, и после обновления конфигурации на сервере под 1С:ERP платформу приходится подтягивать вслед. Минимальные версии для конфигураций указаны в системных требованиях 1С.
Что меняется, когда сервер арендован
При собственном сервере версия платформы зависит от одного человека, который часто совмещает 1С с заявками на принтеры. Он в отпуске, а сроки сдачи отчётности не ждут.
В аренде сервера 1С платформу на сервере и терминальной ферме ведёт администратор провайдера. Обновление он согласует с вами заранее, назначает окно и сообщает, какую версию ставить на оставшиеся рабочие места. За кластер, публикацию и регистрацию COM отвечает один исполнитель, поэтому версии не расходятся между разными людьми. Стоимость начинается от 1 100 ₽ в месяц за пользователя. Небольшой команде обычно хватает виртуального сервера для 1С.
Если переезжать пока рано, а версии уже расходятся, разбор текущей инфраструктуры можно заказать отдельно: сопровождение 1С и работа сисадмина стоят 3800 руб/час. Начинаем с инвентаризации: где стоят платформы и какие ярлыки, публикации и роботы на них смотрят.
❓ Частые вопросы
Что означает ошибка «Несоответствие версий клиента и сервера» в 1С?
Клиентское приложение запущено с платформы другого релиза, чем сервер, к которому оно подключается. Например, клиент 8.3.22, сервер 8.3.25. Протокол обмена между релизами отличается, поэтому подключение отклоняется. Сервер и база при этом не повреждены, нужно только выровнять версии платформы на клиентах или на сервере.
Должны ли совпадать все четыре числа версии платформы?
Как правило, достаточно совпадения первых трёх чисел, то есть релиза, например 8.3.25. Сборки внутри релиза обычно работают вместе. Но при поиске причины ошибки лучше выровнять и четвёртое число, чтобы исключить лишние подозреваемые. Требования для вашей конфигурации смотрите в системных требованиях 1С.
Можно ли просто вернуть сервер на старую платформу?
Можно, если старая версия ещё установлена рядом: в свойствах службы «Агент сервера» указывают ragent.exe прежней версии. Но если базу уже открывали новой платформой, старая может её не принять. Сначала проверьте откат на копии базы и не забудьте вернуть веб-публикацию и COM-регистрацию.
Почему ошибка есть только у части сотрудников?
У одних рабочих мест платформа уже обновлена или ярлык указывает на нужный релиз, у других нет. Чаще всего разница в путях запуска: одни открывают базу через новый ярлык, другие через старую запись в стартере. Ещё вариант: в кластере из нескольких узлов обновили не все серверы.
Сколько стоит аренда сервера 1С, если платформу ведёт провайдер?
Аренда сервера 1С начинается от 1 100 ₽ в месяц за пользователя, обновлением платформы на сервере занимается администратор провайдера. Разовая работа сисадмина, например аудит версий на вашей текущей инфраструктуре, стоит 3800 руб/час. Итоговая сумма зависит от числа пользователей.
Или позвоните: +7 906 045-28-27 — в рабочее время с 9:00 до 19:00
Остались вопросы? Нужна помощь?
Менеджеры компании с радостью ответят на ваши вопросы, произведут расчет стоимости услуг и подготовят индивидуальное коммерческое предложение.
Бесплатная консультация

