Релиз вышел, а в базе доработки: обновляем 1С и сохраняем расширения
Содержание
Обновление конфигурации
1С с расширением делается так же, как обычное: релиз ставится на основную конфигурацию, расширение остаётся в базе. Но перед этим нужно выгрузить расширение в файл .cfe, а после — проверить его применимость на копии базы. Если в новом релизе изменились объекты, которые расширение «заимствовало», платформа его просто не подключит, и доработки пропадут из интерфейса.
Типичная картина: бухгалтер ставит свежий релиз Бухгалтерии в пятницу вечером, а в понедельник не печатается доработанная накладная и исчез дополнительный реквизит в карточке договора. Конфигурация обновилась, расширение — нет. Ниже порядок, при котором такого не случается.
Чем обновление с расширениями отличается от обычного
Расширение (файл .cfe) появилось в платформе 8.3.6. Оно хранится в базе отдельно от основной конфигурации и накладывается на неё при запуске. Поэтому типовую конфигурацию
не нужно снимать с поддержки: релиз ставится штатно, без объединения вручную.
Зато появляется новая точка отказа — заимствованные объекты. Когда разработчик дорабатывает в расширении документ, форму или общий модуль, он «заимствует» объект из основной конфигурации. Расширение запоминает, как этот объект выглядел.
После обновления возможны три ситуации:
- ✅ заимствованные объекты в новом релизе не менялись — расширение работает как раньше;
- ⚠️ объект изменился (переименован реквизит, у формы удалён элемент, у процедуры другая сигнатура) — расширение становится неприменимым или падает с ошибкой в конкретном месте;
- ❌ объект удалён из конфигурации — расширение точно не подключится, пока его не исправят.
Отдельный риск — расширения с данными. Если расширение добавляет свои справочники, регистры или реквизиты, его данные лежат в той же базе. Удаление такого расширения удаляет и его данные. Поэтому «удалить и загрузить заново» — не безобидная операция.
Подготовка к обновлению конфигурации с расширением
До запуска обновления соберите сведения и сохраните всё, что может понадобиться для отката. Это пять-десять минут работы.
Список расширений и их назначение
В типовых конфигурациях на БСП (Бухгалтерия 3.0, ЗУП 3.1, УТ 11) список открывается так: Администрирование → Печатные формы, отчеты и обработки → Расширения. Там видно имя, версию, флажок использования и признак безопасного режима.
В конфигураторе тот же список — Конфигурация → Расширения конфигурации. Здесь видно ещё и свойство «Назначение»:
| Назначение | Что обычно внутри | Риск при обновлении |
|---|---|---|
| Исправление | срочная правка ошибки типовой конфигурации | высокий: исправление часто уже вошло в релиз и начинает конфликтовать |
| Адаптация | доработки под учёт компании: формы, реквизиты, печать | средний: зависит от числа заимствованных объектов |
| Дополнение | новые объекты, отчёты, интеграции | ниже: мало опирается на типовые объекты |
💡 Расширения с назначением «Исправление» после обновления часто правильнее отключить, чем чинить. Если в описании релиза указано, что ошибка исправлена, — проверьте и удалите заплатку.
Чек-лист перед стартом
Расширение в файл сохраняется из окна Конфигурация → Расширения конфигурации в конфигураторе: выделите строку и выберите команду сохранения в файл. Имя файла делайте говорящим: Печать_ТОРГ12_v1.4_до_3.0.180.cfe. Так через полгода будет понятно, какая версия под какой релиз.
Резервная копия и архив перед обновлением
Перед обновлением нужна полная копия базы — откат «по кусочкам» с расширениями работает плохо.
Выгрузка в .dt. В конфигураторе: Администрирование → Выгрузить информационную базу. Для этого нужен монопольный доступ — попросите пользователей выйти. Выгрузка содержит и основную конфигурацию, и расширения, и их данные.
Копия файла базы. Для файлового варианта достаточно скопировать каталог с файлом 1Cv8.1CD при закрытых сеансах. Копировать файл, пока в базе кто-то работает, нельзя: копия может оказаться битой.
Копия СУБД. Для клиент-серверной базы на MS SQL или PostgreSQL надёжнее сделать бэкап средствами СУБД. Это быстрее, чем .dt на больших базах, и не требует выгонять пользователей на время копирования.
Встроенное резервное копирование
БСП. В файловых базах есть обработка Администрирование → Обслуживание → Резервное копирование и восстановление. Её удобно настроить на автоматический запуск перед обновлением из 1С:Предприятия.
Копия, которую ни разу не разворачивали, — не копия. Хотя бы раз загрузите .dt в пустую базу и убедитесь, что она открывается.
Архив версий: что хранить после обновления
Копия перед обновлением нужна на день. Архив нужен на месяцы: чтобы через квартал понять, когда что-то сломалось, и вернуть работающую версию расширения.
Удобная структура каталога архива:
Архив_1С/
2026-10-07_БП_3.0.180/
до_обновления.dt
Печать_ТОРГ12_v1.4.cfe
Доп_реквизиты_v2.1.cfe
журнал_обновления.txt
2026-11-12_БП_3.0.182/
...
Что держать в архиве:
- 📦 файлы
.cfeвсех расширений — до и после правки под новый релиз; - 📦 выгрузку
.dtна момент перед обновлением; - 📦 файл
.cfосновной конфигурации, если в ней есть собственные доработки; - 📝 текстовый журнал: дата, номер релиза, какие расширения правили и почему.
Сколько хранить — решает регламент компании. Практичный минимум: копии за последние три обновления и все .cfe, пока расширение используется.
Способы обновления: какой выбрать
Расширения не влияют на выбор способа — влияет вид базы и наличие доработок в основной конфигурации.
| Способ | Когда подходит | Что с расширениями |
|---|---|---|
Из 1С:Предприятия, Администрирование → Интернет-поддержка и сервисы → Обновление версии программы | типовая конфигурация на полной поддержке, файловая или небольшая серверная база | остаются в базе, проверка применимости — при следующем запуске |
Вручную в конфигураторе файлом .cfu | основная конфигурация на поддержке с изменениями, нужно контролировать объединение | остаются в базе, можно сразу открыть и проверить |
Пакетный запуск 1cv8 DESIGNER по расписанию | много баз, ночные окна, однотипные конфигурации | можно дополнительно перезагрузить нужные .cfe той же командой |
| Обслуживающая организация или облачный провайдер | нет своего администратора, база в облаке | зависит от провайдера: уточните, кто проверяет расширения |
Пошаговое обновление конфигурации с расширением
Порядок для ручного обновления через конфигуратор. Сначала его стоит пройти на копии базы, а уже потом — на рабочей.
Шаг 1. Обновить копию
- Разверните копию из свежего
.dtв отдельную базу. - Откройте копию в конфигураторе, выберите
Конфигурация → Поддержка → Обновить конфигурациюи укажите файл.cfuнужного релиза. - Если в основной конфигурации нет собственных правок, объединение пройдёт без вопросов. Если правки есть — разберите их в окне сравнения.
- Примите изменения и обновите конфигурацию базы данных (
F7или кнопка с барабаном на панели).
Шаг 2. Проверить расширения
- Откройте
Конфигурация → Расширения конфигурации. - Откройте каждое расширение и запустите
Конфигурация → Проверка конфигурациидля него. Синтаксические ошибки в модулях расширения появятся в окне сообщений с указанием объекта. - Запустите копию в режиме 1С:Предприятие. Неприменимое расширение платформа не подключит и выдаст предупреждение при старте.
- Пройдите по доработкам руками: откройте доработанные формы, распечатайте доработанные печатные формы, проведите документ, в который расширение добавляет движения.
Шаг 3. Исправить, что сломалось
Если расширение ваше и в нём есть ошибки:
- удалите из расширения заимствованный объект, которого больше нет в конфигурации, вместе с кодом, который на него ссылается;
- для изменившегося объекта удалите заимствование и заимствуйте объект заново — тогда расширение запомнит его новое состояние;
- перенесите доработки формы на новые элементы, если типовая форма перестроена;
- проверьте процедуры с аннотациями
&Перед,&После,&Вместо: если имя или параметры типовой процедуры изменились, перехват перестаёт работать.
Если расширение от стороннего разработчика — запросите у него версию под новый релиз. Править чужое расширение без исходной поставки рискованно: при следующем обновлении от автора ваши правки потеряются.
Исправленное расширение сохраните в новый файл .cfe и положите в архив.
Шаг 4. Обновить рабочую базу
- Предупредите пользователей и дождитесь, пока все выйдут. Для клиент-серверной базы установите блокировку сеансов в консоли кластера или в 1С:Предприятии (
Администрирование → Обслуживание → Блокировка работы пользователей). Активные сеансы будут завершены, поэтому делайте это в согласованное окно. - Сделайте резервную копию.
- Повторите обновление основной конфигурации тем же файлом
.cfu. - Если расширения правили на копии — загрузите исправленные
.cfeповерх существующих (через команду загрузки из файла в списке расширений), а не удаляйте и создавайте заново. Так сохранятся данные расширения. - Обновите конфигурацию базы данных.
- Запустите 1С:Предприятие, проверьте ключевые доработки и снимите блокировку.
Обновление в файловых, серверных и облачных базах
Файловая база. Для обновления структуры нужен монопольный доступ: все пользователи должны выйти, включая зависшие сеансы. Если база на общем сетевом диске, убедитесь, что на других компьютерах не осталось открытых окон 1С. Расширения лежат в том же файле 1Cv8.1CD, поэтому копия файла сохраняет всё сразу.
Клиент-серверная база . Монопольный доступ тоже нужен для обновления структуры, но обновление можно подготовить заранее, пока пользователи работают, а применить в коротком окне. На крупных базах реструктуризация после релиза может идти долго — замерьте время на копии и планируйте окно с запасом.
Облако (сервисы вроде 1С:Фреш). Основную конфигурацию обновляет провайдер, вы на это не влияете. Расширения в таком сервисе ставятся через его механизм, а несовместимое с новой версией расширение может быть отключено. Перед плановым обновлением провайдера уточните у автора расширения, выпущена ли совместимая версия. При аренде сервера с доступом к конфигуратору всё работает как в клиент-серверном варианте.
Автоматизация обновлений: пакетный режим и скрипты
Когда баз десяток, ручное обновление превращается в ночную смену. Пакетный режим конфигуратора позволяет собрать сценарий из нескольких команд.
Пример bat-файла для файловой базы:
@echo off
set V8="C:\Program Files\1cv8\8.3.25.1374\bin\1cv8.exe"
set IB=/F"D:\Bases\Buh"
set AUTH=/N"Администратор" /P"пароль"
set LOG=/Out"D:\Logs\update.log"
rem 1. Резервная копия
%V8% DESIGNER %IB% %AUTH% /DumpIB "D:\Backup\buh_before.dt" %LOG%
rem 2. Сохранить расширение в файл
%V8% DESIGNER %IB% %AUTH% /DumpCfg "D:\Backup\Pechat.cfe" -Extension Печать_ТОРГ12 %LOG%
rem 3. Обновить основную конфигурацию и структуру БД
%V8% DESIGNER %IB% %AUTH% /UpdateCfg "D:\Releases\1Cv8.cfu" /UpdateDBCfg %LOG%
rem 4. Загрузить исправленное расширение и обновить его в БД
%V8% DESIGNER %IB% %AUTH% /LoadCfg "D:\Ext\Pechat_new.cfe" -Extension Печать_ТОРГ12 /UpdateDBCfg -Extension Печать_ТОРГ12 %LOG%
Номер версии платформы в пути подставьте свой. Для серверной базы вместо /F используется /S"сервер\база".
💡 Пароль в открытом виде в .bat — плохая идея. Храните скрипт в каталоге с ограниченным доступом или передавайте учётные данные из защищённого хранилища.
Что ещё автоматизируют на практике:
- 🔁 разбор журнала
/Outна слова «ошибка» и отправку результата на почту или в мессенджер; - 🔁 тестовый запуск 1С:Предприятия после обновления с обработкой, которая открывает доработанные формы;
- 🔁 обновление сначала тестовой базы ночью, а рабочей — только после ручной проверки утром.
Для полноценного конвейера используют систему хранения исходников расширений (выгрузка в файлы XML через /DumpConfigToFiles) и тестовые фреймворки. Это уже уровень команды разработки, а не разового обновления.
Ошибки после обновления и что с ними делать
Если после всех правок расширение «Исправление» по-прежнему мешает — снимите у него флажок использования в списке расширений. Доработка перестанет действовать, но расширение и его настройки останутся, и к нему можно вернуться.
Частые вопросы
Нужно ли снимать конфигурацию с поддержки, если доработки сделаны расширениями?
Обновляются ли расширения вместе с релизом?
Можно ли обновить сразу через несколько релизов, если стоят расширения?
Влияет ли обновление платформы на расширения?
Что делать, если автор расширения больше не поддерживает его?
.cfe безопасно его не исправить.