Вернуть 1С на прежний релиз: способы отката и чем они грозят данным
Содержание
Надёжно откатить обновление
1С назад можно одним способом: восстановить базу из резервной копии, снятой до обновления (файл .dt, копия 1Cv8.1CD или бэкап СУБД). Загрузить старую конфигурацию поверх обновлённой технически можно, но данные к этому моменту уже переработаны под новый релиз, и старый код с ними работает плохо.
Типичная ситуация: в пятницу вечером бухгалтер обновил Бухгалтерию, а в понедельник перестала формироваться декларация или сломалась доработанная печатная форма. Первым делом выясните, что именно обновляли — конфигурацию или платформу — и успела ли база пожить на новом релизе. От этого зависит, какой способ отката релизов вам подходит.
Что происходит с базой при обновлении и почему откат не симметричен
Обновление типовой конфигурации делает три вещи:
- 🧩 меняет состав метаданных: справочники, документы, реквизиты, регистры;
- 🗄️ перестраивает таблицы базы данных под новую структуру (этап «Обновить конфигурацию базы данных»);
- ⚙️ при первом запуске в режиме «1С:Предприятие» выполняет обработчики обновления — они переносят и пересчитывают данные под новый релиз.
Первые два шага обратимы: можно загрузить прежний .cf, и структура вернётся. Третий шаг обратно не прокручивается. Обработчики могли заполнить новые реквизиты, переложить сведения из одного регистра в другой, удалить устаревшие записи. Старая версия конфигурации об этих изменениях ничего не знает.
Поэтому вариантов отката по сути два:
| Способ | Когда подходит | Что теряете | Риск |
|---|---|---|---|
| Восстановление из резервной копии | Есть копия до обновления | Всё, что ввели после копии | Низкий |
| «Вернуться к конфигурации БД» | Обновление загружено, но структура базы ещё не обновлялась | Ничего | Нет |
Загрузка старого .cf поверх | Копии нет, база почти не работала на новом релизе | Ничего явно, но данные могут быть несогласованы | Высокий |
Сравнение и объединение со старым .cf | Нужно вернуть отдельные объекты, а не весь релиз | Ничего явно | Средний |
| Откат платформы | Обновляли только платформу | Ничего | Низкий |
Подготовка к откату обновления: что сделать до первого действия
Даже если база «сломана», сначала зафиксируйте её текущее состояние. Откат может пойти не так, и тогда понадобится точка, к которой можно вернуться.
- Завершите работу всех пользователей. В клиент-серверной базе включите блокировку начала сеансов в свойствах информационной базы в консоли кластера. Активные сеансы при этом оборвутся, поэтому предупредите людей заранее и выбирайте нерабочее время.
- Сделайте выгрузку текущей базы: в Конфигураторе
Администрирование → Выгрузить информационную базу. Имя файла дайте говорящее, напримерbuh_posle_obnovleniya_2026-10-07.dt. - Сохраните текущую конфигурацию отдельно:
Конфигурация → Сохранить конфигурацию в файл. Пригодится, если были доработки, которые придётся переносить. - Найдите файл старого релиза. Без него откатить конфигурацию невозможно, а с сайта поставщика скачиваются полные дистрибутивы не всех версий.
- Проверьте, хватает ли места на диске:
.dtи копия СУБД вместе могут занять в 2–3 раза больше, чем сама база.
Старый .cf часто уже лежит на компьютере. Установленные шаблоны конфигураций по умолчанию хранятся в каталоге %APPDATA%\1C\1cv8\tmplts\. Внутри — папки по поставщику, конфигурации и номеру версии, а в них файл 1Cv8.cf полной поставки.
Перед восстановлением выясните ещё одну вещь: на какой платформе делалась резервная копия. Выгрузку .dt, снятую на более новой платформе, старая платформа может не загрузить. Восстанавливайте на той же версии платформы или на версии с номером не ниже.
Способ 1. Откатить обновление 1С из резервной копии базы
Это основной и самый безопасный способ. Вы возвращаете базу целиком — и конфигурацию, и данные — в состояние до обновления.
Восстановление из файла .dt
- Откройте базу в Конфигураторе.
- Выберите
Администрирование → Загрузить информационную базу. - Укажите файл
.dt, снятый до обновления. - Подтвердите предупреждение: текущие данные будут полностью заменены.
- После загрузки Конфигуратор предложит перезапуститься — соглашайтесь.
Загрузка .dt требует монопольного доступа к базе. Большая база загружается долго: для 20–30 ГБ закладывайте от часа и больше, в зависимости от диска и СУБД.
Файловая база: копия каталога
Если перед обновлением вы просто скопировали каталог базы, откат ещё проще:
- Убедитесь, что в базе нет ни одного сеанса.
- Переименуйте текущий файл
1Cv8.1CD, например в1Cv8_new.1CD. Не удаляйте его. - Положите на его место
1Cv8.1CDиз копии. - Запустите базу и проверьте номер релиза в
Справка → О программе(меню вызывается кнопкой с тремя полосками или значком в заголовке окна).
Клиент-серверная база: бэкап СУБД
Для MS SQL Server или PostgreSQL удобнее восстанавливать штатными средствами СУБД — это быстрее, чем .dt.
- 🔒 Включите блокировку начала сеансов и завершите текущие сеансы в консоли кластера.
- 🗂️ Восстановите копию поверх рабочей базы средствами СУБД (в SQL Server — восстановление базы данных из бэкапа, в PostgreSQL —
pg_restoreиз дампа). - ✅ Снимите блокировку и проверьте релиз в программе.
Восстанавливать бэкап СУБД поверх базы, к которой подключены сеансы 1С, нельзя: сервер 1С держит соединения и кэши. Сначала все сеансы, потом СУБД.
Если после обновления уже работали
Копия до обновления вернёт базу в прошлое, и всё, что ввели позже, пропадёт. Рабочий приём:
- Восстановите копию в новую информационную базу, а не поверх рабочей.
- В обновлённой базе выгрузите документы за период после обновления универсальной обработкой выгрузки и загрузки данных XML (она есть в наборе стандартных обработок для платформы 8.3).
- Загрузите файл в восстановленную базу, перепроведите документы за этот период.
- Сверьте остатки и обороты по ключевым счетам в обеих базах.
- Только после сверки переключите пользователей на восстановленную базу.
Обработка XML работает, когда структура объектов в двух релизах совпадает. Если новый релиз добавил реквизиты, при загрузке они просто не перенесутся. Если удалил или переименовал объекты — часть данных придётся вносить вручную.
Способ 2. Вернуться к старой конфигурации без копии базы
Обновление ещё не применено к базе
Самый частый счастливый случай. Вы загрузили обновление (.cfu или .cf) в Конфигураторе, увидели список изменений и передумали. Пока вы не нажали «Обновить конфигурацию
базы данных» (F7), меняется только основная конфигурация, а база живёт на старой.
Откат: Конфигурация → Конфигурация базы данных → Вернуться к конфигурации БД. Основная конфигурация станет такой же, как конфигурация базы данных. Данные не затрагиваются.
Загрузка старого .cf поверх обновлённой базы
Если структура уже обновлена, а копии нет, остаётся загрузка прежнего релиза целиком:
- Сделайте выгрузку
.dtтекущей базы (см. подготовку выше). Конфигурация → Загрузить конфигурацию из файла, выберите старый.cf.- Нажмите F7 — «Обновить конфигурацию базы данных».
- Изучите список изменений структуры. Если там удаление реквизитов или объектов, данные в них будут потеряны.
- Примите изменения и запустите базу в режиме «1С:Предприятие».
Загрузка .cf полностью заменяет конфигурацию: все доработки, сделанные в базе, исчезнут. Если они были — сохраните текущую конфигурацию в файл и используйте способ через сравнение и объединение.
Слабое место этого варианта — данные, уже обработанные обработчиками обновления. Типовые конфигурации на БСП запоминают номер версии, до которой обновлена база. При запуске на релизе с меньшим номером программа может сообщить о несоответствии версий или работать с ошибками в отдельных разделах. Чем дольше база прожила на новом релизе, тем больше таких расхождений.
Если откат нужен из-за одной сломанной функции (отчёт, печатная форма, обмен), часто правильнее остаться на новом релизе и подождать исправления или переделать доработку в расширении. Откат релиза ради одного отчёта обычно обходится дороже.
Способ 3. Частичный откат релиза: объединение и хранилище
Сравнение и объединение со старым .cf
Подходит для доработанной конфигурации, когда нужно вернуть прежнее поведение отдельных объектов, а не весь релиз.
- Выгрузите базу в
.dtи сохраните текущую конфигурацию в файл. - Выберите
Конфигурация → Сравнить, объединить с конфигурацией из файлаи укажите старый.cfпоставщика. - В окне сравнения снимите все флажки, затем отметьте только те объекты, которые нужно вернуть: модуль отчёта, макет печатной формы, общий модуль.
- Режим объединения для отмеченных объектов — «Взять из файла».
- Выполните объединение, затем F7.
Такой точечный откат опасен связями между объектами. Старый модуль отчёта может вызывать процедуру общего модуля, которую в новом релизе переименовали. Тогда при формировании отчёта появится ошибка вида Процедура или функция с указанным именем не определена. Проверяйте каждый возвращённый объект на копии базы, а не на рабочей.
Откат версий через хранилище конфигурации
Если доработки ведутся в хранилище конфигурации, история изменений уже есть. Каждое помещение в хранилище — отдельная версия, в том числе обновление на новый релиз, если его помещали туда.
Порядок отката конфигурации из хранилища:
- Откройте
Конфигурация → Хранилище конфигурации → История хранилища. - Найдите версию до помещения обновления: по дате, комментарию или пользователю.
- Сохраните эту версию в файл
.cfкомандой сохранения из истории. - Дальше действуйте как в способе 2 или 3: загрузите файл целиком или объедините нужные объекты.
- Поместите результат в хранилище с понятным комментарием, например «Откат на релиз 3.0.x из-за ошибки печати ТОРГ-12».
Хранилище возвращает только конфигурацию. Данные база не откатывает: обработчики обновления, если они уже выполнились, остались выполненными. Для полного возврата всё равно нужна копия базы.
Как откатить обновление платформы 1С
Иногда «сломалось после обновления» означает новую платформу, а конфигурация прежняя. Тогда базу трогать не нужно.
- Убедитесь, что старая версия платформы установлена. Если нет — установите её из дистрибутива, новую при этом удалять необязательно: версии ставятся рядом.
- В окне запуска 1С выделите базу и нажмите «Изменить».
- На последней странице мастера в поле «Версия 1С:Предприятия» укажите нужный номер, например
8.3.24.1691. - Сохраните и запустите базу.
Для клиент-серверной базы так не получится: клиент должен совпадать по версии с сервером 1С. Откат платформы на сервере — это переустановка службы сервера нужной версии. При остановке службы все сеансы оборвутся, делайте это вне рабочего времени.
Учтите и обратную связь: новые релизы конфигураций требуют платформу с номером не ниже указанного в описании релиза. После отката конфигурации старая платформа подойдёт, а вот откат платформы под новой конфигурацией может закончиться отказом запуска.
Ошибки при откате релиза и что с ними делать
Как обновлять 1С, чтобы откат не понадобился
Большинство откатов — следствие обновления «вслепую». Несколько правил снимают проблему заранее:
- 💾 Копия перед каждым обновлением. Мастер обновления в режиме «1С:Предприятие» умеет сам создавать резервную копию — не отключайте эту настройку. Для серверных баз — бэкап СУБД.
- 🧪 Сначала на копии. Разверните
.dtв тестовую базу, обновите её, сформируйте ключевые отчёты и печатные формы, проверьте обмены. - 📝 Читайте описание изменений. В нём указана минимальная версия платформы и порядок перехода через промежуточные релизы.
- 🔢 Не перескакивайте через обязательные релизы. Если в описании указан промежуточный релиз, обновление через него обязательно.
- 🧱 Доработки — в расширения. Изменения в расширении переживают обновление типовой конфигурации и не требуют объединения.
- 🗓️ Не обновляйтесь перед сдачей отчётности. Обновите за неделю до срока или сразу после сдачи, чтобы было время откатиться.
- 📦 Храните старые .cf. Не удаляйте шаблоны прошлых релизов, пока новый не отработал хотя бы месяц.
Сколько хранить копию до обновления? Пока не закрыт период, в котором обновлялись: месяц для текущего учёта, а перед квартальной отчётностью — до её сдачи.
Частые вопросы
Можно ли откатить обновление, установленное через `.cfu`?
.cfu содержит только разницу между релизами и работает в одну сторону. Для отката нужен полный .cf старого релиза или резервная копия базы.Откатится ли обновление, если просто удалить новую версию платформы?
Восстановление .dt затронет пользователей и их пароли?
.dt входит список пользователей, поэтому вернутся пользователи и пароли на момент копии. Тех, кого завели после неё, придётся создать заново.