Откат исправлений, обновлений и версий платформы 1С:Предприятие 8.3
Содержание
Патч в 1С 8.3 — это расширение конфигурации
с назначением «Исправление». Чтобы удалить патч
, откройте Конфигуратор → Конфигурация → Расширения конфигурации, выделите расширение с именем вида EF_... и удалите его. Без Конфигуратора то же самое делается в пользовательском режиме через список расширений или список установленных исправлений.
Сложнее, если под «патчем» понимают обновление конфигурации или новую версию платформы. Их «удалить» в прямом смысле нельзя: обновление откатывают из резервной копии, а версию платформы сносят и переключают базу на старую сборку. Ниже — каждый вариант отдельно, плюс очистка кэша, серверный режим и журнал регистрации.
1. Что именно нужно откатить: патч, релиз или платформу
Прежде чем что-то удалять, определите, что поменялось. От этого зависит способ.
Откройте Справка → О программе (или значок «i» в правом верхнем углу). Там видны:
- 🔹 версия платформы, например
8.3.25.1394; - 🔹 конфигурация и её релиз, например
Бухгалтерия предприятия, редакция 3.0 (3.0.xxx.yy); - 🔹 признак «Конфигурация изменена» или подключённые расширения.
| Что поменялось | Как выглядит | Как откатить |
|---|---|---|
| Исправление (патч) | Расширение EF_..., релиз конфигурации тот же | Удалить или отключить расширение |
| Обновление конфигурации | Сменился номер релиза | Восстановить базу из копии до обновления |
| Версия платформы | Сменился номер 8.3.xx.xxxx | Запустить базу на старой версии, лишнюю удалить |
Типичные причины отката:
- ⚠️ после установки исправления перестала открываться форма или печатная форма;
- ⚠️ отчёт начал считать иначе, а ждать следующего патча некогда;
- ⚠️ новая сборка платформы конфликтует с внешней обработкой или драйвером оборудования;
- ⚠️ на сервере и клиенте оказались разные версии платформы, и подключение не проходит.
Запишите номер патча и дату установки до удаления. Если исправление закрывало реальную ошибку, после его удаления ошибка вернётся, и придётся объяснять, почему.
2. Удаление патча в файловой базе
Файловая база хранит расширения внутри файла 1Cv8.1CD. Удалять их можно двумя путями.
Через пользовательский режим
- Откройте
Администрирование → Обслуживание. В группе обновления программы есть ссылка на список установленных исправлений (в типовых конфигурациях на БСП она называется «Установленные исправления»). - Выделите исправление и выберите удаление в командной панели.
- Перезапустите сеанс 1С: изменения в расширениях применяются только к новым сеансам.
Универсальный путь, который работает в любой конфигурации: Главное меню (☰) → Все функции → Стандартные → Управление расширениями конфигурации. В списке исправления видны по имени EF_ и назначению «Исправление».
Если не уверены, что виноват именно патч, сначала снимите флажок «Активно» и перезапустите программу. Расширение останется в базе, но работать перестанет. Помогло — удаляйте. Не помогло — включите обратно.
Если пункт «Все функции» не виден, включите его: ☰ → Сервис → Параметры → Отображать команду "Все функции".
Через Конфигуратор
- Запустите базу в режиме «Конфигуратор».
- Откройте
Конфигурация → Расширения конфигурации. - Выделите строку с назначением «Исправление» и нажмите кнопку удаления.
- Подтвердите действие и закройте окно.
Удаление расширения в Конфигураторе необратимо. Если расширение хранило свои данные, они удалятся вместе с ним. У типовых исправлений собственных данных обычно нет, но перед удалением сделайте выгрузку: Администрирование → Выгрузить информационную базу в файл .dt.
Если из-за патча база не открывается
Бывает, что после установки исправления пользовательский режим падает с ошибкой сразу при входе. До списка расширений в программе уже не добраться.
В этом случае выручает Конфигуратор: он открывается независимо от того, что в расширениях. Порядок такой:
- Запустите базу в режиме «Конфигуратор» под пользователем с полными правами.
- В окне расширений сначала снимите у подозрительного исправления флажок «Активно», а не удаляйте его сразу.
- Попробуйте открыть базу в пользовательском режиме.
- Если вход прошёл, удаляйте исправление. Если нет — верните флажок и ищите причину в другом месте: в кэше или версии платформы.
Так вы точно знаете, что ошибку вызывал именно этот патч, а не совпадение по времени.
Если нужно откатить само обновление конфигурации
Кнопки «отменить обновление» в 1С нет. Варианты такие:
- Восстановить базу из копии, сделанной перед обновлением (
Администрирование → Загрузить информационную базудля.dtили замена файла1Cv8.1CDдля файловой копии). - Данные, введённые после обновления, перенести вручную или выгрузкой между базами.
Загрузка .dt полностью заменяет базу, требует монопольного доступа и затирает всё, что ввели после копии. Делайте это, когда в базе никто не работает.
3. Очистка кэша после удаления исправлений
После удаления патча клиент иногда продолжает показывать старые формы или ошибки. Причина — кэш конфигурации на компьютере пользователя.
Самый мягкий способ — запуск с параметром очистки кэша. В окне запуска выделите базу, нажмите «Изменить» и на последнем шаге в поле «Дополнительные параметры запуска» впишите:
/ClearCache
Запустите базу один раз, потом параметр уберите.
Если не помогло — очистите папки кэша вручную. Они лежат в двух местах:
- 📁
%APPDATA%\1C\1cv8\ - 📁
%LOCALAPPDATA%\1C\1cv8\
Удалять нужно только подпапки с именами-идентификаторами вида a1b2c3d4-.... Перед запуском закройте все окна 1С.
@echo off
rem Закройте все окна 1С перед запуском
for /d %%D in ("%APPDATA%\1C\1cv8\*-*") do rd /s /q "%%D"
for /d %%D in ("%LOCALAPPDATA%\1C\1cv8\*-*") do rd /s /q "%%D"
echo Кэш 1С очищен
pause
Не трогайте папку %APPDATA%\1C\1CEStart\. В ней файл ibases.v8i со списком баз. Удалите его — и пользователь увидит пустое окно запуска.
Временные файлы (%TEMP%, файлы *.tmp) на работу исправлений не влияют. Их можно чистить штатными средствами Windows, но к удалению патчей это отношения не имеет.
4. Как запретить повторную установку исправлений
Удалили патч, а через день он снова в базе? Значит, работает автоматическая загрузка исправлений через интернет -поддержку.
Эта настройка хранится не в реестре Windows, а в самой информационной базе. Откройте Администрирование → Интернет-поддержка и сервисы и перейдите к настройкам обновления программы. Выберите вариант, при котором исправления не загружаются и не устанавливаются автоматически.
Что ещё влияет на автоустановку:
- 🔸 регламентное задание загрузки исправлений — проверьте его в списке регламентных заданий (
Администрирование → Обслуживание → Регламентные операции); - 🔸 подключённая интернет-поддержка — без неё патчи сами не приходят;
- 🔸 общий каталог обновлений в сети, если администратор раскладывает исправления централизованно.
Версию платформы можно закрепить за базой отдельно. В окне запуска выделите базу, нажмите «Изменить», на последнем шаге укажите нужную версию в поле «Версия 1С:Предприятия», например 8.3.24. Параметр сохраняется в ibases.v8i строкой Version=. С ним база будет открываться на указанной версии, даже если на компьютере стоят более новые.
Отключая автоустановку, вы берёте исправления на себя. Раз в месяц проверяйте список доступных патчей вручную: часть из них закрывает ошибки в отчётности.
5. Патчи и версии платформы на сервере 1С
В клиент-серверной базе исправления тоже живут внутри базы, только в СУБД. Удаляются они так же, как в файловой: через список расширений в программе или через Конфигуратор. Остальные пользователи увидят изменения после перезапуска своих сеансов.
С платформой сложнее. Версия клиента должна совпадать с версией сервера 1С с точностью до сборки. Чтобы откатить платформу на сервере:
- Предупредите пользователей и дождитесь, пока все выйдут. Остановка службы агента оборвёт все сеансы на сервере.
- Установите на сервер нужную сборку, если её нет.
- Остановите службу агента сервера текущей версии.
- Зарегистрируйте и запустите службу агента для старой сборки (через установщик или
ragent.exeиз папкиbinнужной версии с ключами регистрации службы; параметры смотрите в документации к платформе). - Поставьте эту же сборку на клиентские компьютеры и закрепите её за базой, как в разделе выше.
Проверить, какие сеансы подключены к базе, можно через консоль кластера или утилитой rac:
rac cluster list
rac session list --cluster=<id кластера>
Если после смены версии сервер ведёт себя странно, чистят серверный кэш: каталоги snccntx* в папке srvinfo\reg_1541. Делается это только при остановленной службе и в нерабочее время.
Не удаляйте папку srvinfo целиком и не «пересоздавайте кластер». Там хранится реестр кластера со списком баз; без него придётся заново регистрировать все информационные базы.
6. Удаление старых версий платформы с компьютера
Каждая сборка ставится в свою папку: C:\Program Files\1cv8\8.3.xx.xxxx\. За год их может накопиться пять-шесть, по 500-800 МБ каждая.
Правильный порядок:
- Убедитесь, что ни одна база не закреплена за удаляемой версией (смотрите поле версии в свойствах базы).
- Удалите версию через
Параметры Windows → ПриложенияилиПанель управления → Программы и компоненты. Каждая сборка видна там отдельной строкой «1С:Предприятие 8 (x86-64) (8.3.xx.xxxx)». - Если после удаления папка версии осталась, удалите её вручную.
Оставьте хотя бы одну предыдущую сборку рядом с текущей. Если новая версия подведёт, база откроется на старой за минуту, без поиска дистрибутива.
На сервере не удаляйте сборку, под которой зарегистрирована работающая служба агента. Сначала переключите службу, потом удаляйте.
7. Журнал регистрации: следы патчей и его сокращение
Установка и удаление расширений фиксируются в журнале регистрации. Это полезно: по журналу видно, кто и когда поставил исправление.
Посмотреть события: Администрирование → Обслуживание → Журнал регистрации. Поставьте отбор по событиям, связанным с расширениями, и по нужному периоду.
Удалять отдельные записи о патчах нельзя и не нужно. Можно сократить журнал целиком, если он разросся и тормозит базу:
- Откройте базу в Конфигураторе.
- Выберите
Администрирование → Настройка журнала регистрации. - Нажмите «Сократить», укажите дату, до которой удалить записи, и при желании файл для сохранения удалённой части.
Журнал файловой базы лежит рядом с ней, в папке 1Cv8Log. Удалять её руками при закрытой базе технически можно, но вы потеряете всю историю, включая записи о том, кто менял данные.
Журнал — главный инструмент расследования при спорных проводках и пропавших документах. Сокращайте его с сохранением удалённой части в файл.
8. Как обновляться, чтобы потом не откатывать
Удаление патча — это всегда реакция на проблему. Её проще предотвратить.
Пара практических привычек:
- ✅ Держите тестовую копию рабочей базы и ставьте патчи сначала туда.
- ✅ При обновлении конфигурации на новый релиз исправления, вошедшие в релиз, становятся лишними. Программа сама убирает неактуальные исправления, но после обновления проверьте список расширений.
- ✅ Не держите в базе одновременно доработки «на коленке» и патчи к тем же объектам: при конфликте сложно понять, кто виноват.
Частые ошибки при откате и как их избежать
| Ошибка | Чем грозит | Как правильно |
|---|---|---|
| Удалили расширение с доработками вместо патча | Пропали отчёты или реквизиты | Смотреть на назначение «Исправление» и префикс EF_ |
Снесли папку 1C в профиле целиком | Пропал список баз | Чистить только папки-идентификаторы в 1cv8 |
| Удалили сборку платформы, под которой работает сервер | Служба не стартует | Сначала переключить службу на другую сборку |
| Откатили патч и не отключили автозагрузку | Патч вернулся через сутки | Сменить настройку загрузки исправлений |
Частые вопросы
Можно ли удалить патч, если в базе работают пользователи?
Чем патч отличается от обычного расширения?
Удалится ли патч сам при обновлении конфигурации?
Почему после удаления патча форма всё ещё «старая»?
/ClearCache или удалите папки кэша в профиле пользователя.