Откат обновления 1С:Предприятия 8.3 — возврат прежней платформы и конфигурации
Содержание
Откатить версию обновления 1С можно двумя разными способами, и всё зависит от того, что именно обновляли. Платформу откатывают быстро: старая версия ставится рядом с новой, а в свойствах базы указывается нужный номер. Конфигурацию «назад» не откатить кнопкой — её возвращают из резервной копии, сделанной до обновления.
Типичная ситуация: вечером бухгалтер обновил 1С:Предприятие, а утром отчёт не формируется или внешняя обработка банка падает с ошибкой. Хочется просто вернуть всё как было, но сначала стоит понять, что из этого вообще возвращается без потерь.
Что именно откатываем: платформа или конфигурация
Обновление 1С бывает двух видов, и откат у них устроен по-разному.
| Что обновили | Где это видно | Как откатить | Теряются ли данные |
|---|---|---|---|
| Платформа (8.3.xx.xxxx) | Справка → О программе, строка «1С:Предприятие 8.3 (8.3.xx.xxxx)» | Установить старую версию и выбрать её для базы | Нет |
| Конфигурация (релиз БП, ЗУП, УТ) | Справка → О программе, строка с названием и номером релиза | Загрузить резервную копию базы | Да, всё введённое после копии |
| И то и другое | Обе строки изменились | Сначала конфигурацию из копии, потом платформу | Да, как при откате конфигурации |
Платформу можно вернуть почти без последствий. Конфигурацию — только вместе с данными на момент резервной копии.
Что подготовить до отката
- 📦 Дистрибутив прежней версии платформы. Его скачивают с портала обновлений по договору ИТС. Если старая версия ещё не удалена с компьютера, качать ничего не нужно.
- 💾 Свежую выгрузку базы в
.dt— даже если вы собираетесь её откатывать. Без неё вы не сможете вернуться к текущему состоянию, если откат пойдёт не так. - 🔢 Номер версии, на которую возвращаетесь. Его удобно посмотреть в папке
C:\Program Files\1cv8\— там каталог на каждую установленную версию. - 🧾 Минимальную версию платформы для вашего релиза конфигурации. Она указана в сопроводительных файлах релиза. Если откатить платформу ниже этого номера, база просто не запустится.
Выгрузку в .dt делают через Конфигуратор → Администрирование → Выгрузить информационную базу. Для неё нужно, чтобы в базе не работали другие пользователи.
Как откатить платформу 1С в файловой базе
Платформы разных версий спокойно живут на одном компьютере. Каждая ставится в свой каталог вида C:\Program Files\1cv8\8.3.24.1548\. Поэтому «откат» платформы — это не удаление новой, а выбор старой для конкретной базы.
Способ 1. Указать версию в свойствах базы
- Если старой версии нет в
C:\Program Files\1cv8\, установите её из дистрибутива (setup.exe). Новую версию удалять не обязательно. - В окне запуска 1С выделите базу и нажмите
Изменить. - Пройдите мастер до последней страницы. Там есть поле «Версия 1С:Предприятия».
- Впишите нужный номер, например
8.3.24.1548. Можно указать только начало —8.3.24: тогда запустится самая свежая из установленных сборок этой ветки. - Нажмите
Готовои запустите базу. Проверьте номер вСправка → О программе.
💡 Пустое поле версии означает «запускать самой новой установленной платформой». Именно поэтому после установки обновления все базы сами переходят на новую версию.
Способ 2. Удалить новую версию платформы
Если новая сборка не нужна ни одной базе, её проще удалить через Параметры Windows → Приложения (или «Программы и компоненты»). Ищите строку «1С:Предприятие 8 (x86-64) (8.3.xx.xxxx)» с нужным номером.
После удаления базы с пустым полем версии запустятся на самой новой из оставшихся платформ.
Не удаляйте каталог версии вручную через проводник. Запись в списке программ останется, а следующая установка может завершиться ошибкой.
Способ 3. Запустить базу конкретным 1cv8.exe
Для разовой проверки не нужно трогать настройки базы. Запустите исполняемый файл нужной версии напрямую с указанием пути к базе (пример — в разделе про ключи запуска ниже).
Если старая версия ставилась для всех пользователей терминала
На терминальном сервере список баз у каждого пользователя свой. Поле версии придётся менять в каждом профиле или централизованно — через общий файл списка баз, если он у вас настроен. В файле ibases.v8i нужная строка в описании базы выглядит как Version=8.3.24.
Как откатить платформу на сервере 1С
В клиент-серверном варианте главное правило — версия клиента должна совпадать с версией сервера до последней цифры сборки. Откатили сервер, но не откатили клиентов — пользователи получат ошибку соединения о несоответствии версий. И наоборот.
Порядок отката сервера на Windows
- Предупредите пользователей и выберите окно без работы. При остановке службы оборвутся все сеансы, несохранённые документы пропадут.
- Сделайте выгрузку каждой базы кластера в
.dtили резервную копию средствами СУБД. - Скопируйте каталог настроек кластера (по умолчанию
C:\Program Files\1cv8\srvinfo) в отдельное место. В нём хранится реестр кластера со списком баз. - Остановите службу «Агент сервера 1С:Предприятия 8.3» в оснастке
services.msc. - Установите старую версию сервера из дистрибутива. В установщике отметьте компоненты «Сервер 1С:Предприятия 8» и установку как службы Windows.
- Убедитесь, что служба теперь запускает
ragent.exeиз каталога старой версии. Путь видно в свойствах службы, поле «Исполняемый файл». - Запустите службу и откройте консоль администрирования — базы кластера должны быть на месте.
- Поставьте ту же версию клиента на все рабочие места и укажите её в свойствах баз.
Если служба осталась от новой версии
Установщик не всегда перерегистрирует службу. Тогда это делают вручную из каталога bin старой версии:
cd "C:\Program Files\1cv8\8.3.24.1548\bin"
ragent.exe -rmsrvc
ragent.exe -instsrvc -usr .\USR1CV8 -pwd ПарольСлужбы -regport 1541 -port 1540 -range 1560:1591 -d "C:\Program Files\1cv8\srvinfo"
ragent.exe -start
Порты и пользователь службы должны быть такими же, как были раньше. Если сервер работал на нестандартных портах, перенесите свои значения, иначе клиенты будут стучаться не туда.
💡 Консоль администрирования тоже привязана к версии. После отката зарегистрируйте radmin.dll нужной версии командой regsvr32 "C:\Program Files\1cv8\8.3.24.1548\bin\radmin.dll" от имени администратора, иначе консоль может не подключиться к
кластеру.
Две версии сервера параллельно
Если откатить нужно только одну базу, можно не трогать основной кластер. Старую версию сервера поднимают второй службой на других портах (например, агент 2540, менеджер 2541, диапазон 2560:2591) и с отдельным каталогом srvinfo. Базу регистрируют во втором кластере и подключаются к ней как сервер:2541.
Это удобно для проверки: основной кластер продолжает работать, а проблемная база живёт на старой платформе, пока вы разбираетесь.
Сервер на Linux
Пакеты разных версий ставятся в каталоги /opt/1cv8/x86_64/8.3.xx.xxxx/. Откат сводится к тому, чтобы systemd-служба srv1cv8 запускала ragent нужной версии. Конкретный способ зависит от того, как служба была зарегистрирована, — смотрите файл юнита на вашем сервере.
Как вернуть прежнюю версию конфигурации
Здесь важно понять механику. Обновление релиза меняет не только код, но и данные: при первом запуске выполняются обработчики обновления, которые переносят, заполняют и пересчитывают информацию. Если просто загрузить старый .cf поверх, код вернётся, а данные останутся в новом формате. Такая база работает непредсказуемо.
Поэтому рабочих путей три.
Вариант 1. Резервная копия, сделанная при обновлении
В типовых конфигурациях при обновлении через Администрирование → Обслуживание → Обновление версии программы есть настройка создания резервной копии. Если галочка стояла, копия лежит в каталоге, который был указан в настройках.
- Выгрузите текущую базу в
.dt— на всякий случай. - Откройте
Конфигуратор → Администрирование → Загрузить информационную базу. - Выберите файл копии и подтвердите загрузку.
- Запустите базу в режиме 1С:Предприятие и проверьте номер релиза в
Справка → О программе.
Загрузка .dt полностью заменяет базу. Всё, что сотрудники ввели после копии, исчезнет. Если с момента обновления прошло несколько дней работы, сначала выпишите, какие документы были введены, — их придётся повторить.
Вариант 2. Копия средствами СУБД
Для серверной базы на MS SQL или PostgreSQL копию часто делает администратор по расписанию. Её восстанавливают средствами СУБД в ту же базу (с остановкой работы пользователей) или в новую, которую затем регистрируют в кластере. Второй вариант безопаснее: можно сверить данные, не теряя текущую базу.
Вариант 3. Хранилище конфигурации или старый .cf — только для доработанных баз
Если конфигурация дорабатывалась и подключена к хранилищу, в нём видна история версий. Но хранилище хранит только конфигурацию, а не данные. Вернуть из него прежний код можно, а вот откатить уже выполненные обработчики обновления — нет.
Загрузку старого .cf через Конфигурация → Загрузить конфигурацию из файла используют только в тестовой копии: например, чтобы сравнить, что поменялось в новом релизе, через Конфигурация → Сравнить конфигурации.
Если копии нет
Честный ответ: прежний релиз без копии не вернуть. Обычно и не нужно — разумнее:
- 🔍 найти, какая именно функция сломалась, и проверить, нет ли исправления в следующем релизе или в разделе исправлений (патчей) в
Администрирование → Интернет-поддержка и сервисы; - 🧩 обновить внешние обработки и печатные формы — они часто ломаются после обновления именно из-за изменений в типовой конфигурации;
- 📨 написать на линию поддержки разработчика конфигурации с текстом ошибки.
Ключи запуска и режим совместимости при откате
Запуск нужной версии из командной строки
Ярлык с явным путём к 1cv8.exe гарантирует, что база откроется нужной платформой, независимо от настроек списка баз:
"C:\Program Files\1cv8\8.3.24.1548\bin\1cv8.exe" ENTERPRISE /F"D:\Bases\Buh" /N"Администратор" /P"пароль"
Для серверной базы вместо /F указывают /S"server1c\buh". Для входа в Конфигуратор замените ENTERPRISE на DESIGNER.
| Ключ | Что делает |
|---|---|
ENTERPRISE / DESIGNER | Режим запуска: пользовательский или Конфигуратор |
/F"путь" | Файловая база по пути к каталогу |
/S"сервер\база" | Серверная база |
/N и /P | Имя пользователя и пароль |
/AppAutoCheckVersion- | Отключает автоматический подбор версии платформы под базу |
Не храните пароль администратора в ярлыке на общих компьютерах. Для разовой проверки ключи /N и /P можно опустить — 1С спросит их при входе.
Режим совместимости конфигурации
У конфигурации есть свойство «Режим совместимости». Его видно в Конфигураторе: откройте свойства корня дерева конфигурации и найдите группу «Совместимость». Значение вроде Версия 8.3.24 означает, что конфигурации нужна платформа с номером не ниже 8.3.24.
Отсюда практический вывод: платформу можно откатить только до номера не ниже режима совместимости и не ниже минимальной версии из требований релиза. Если релиз требует 8.3.24, а вы ставите 8.3.22, база не откроется.
Понижать режим совместимости в типовой конфигурации, чтобы «пустить» её на старой платформе, не стоит. Код релиза использует возможности новой платформы, и такая база сломается в неожиданных местах.
Ошибки после отката и как их убрать
Ещё одна неочевидная проблема — внешние компоненты и обработки, скомпилированные под новую платформу. После отката они могут не загрузиться. Если подключали новые версии компонент (торговое оборудование, обмен с банком), верните и их прежние версии.