К статье
Практический материал

Разработка и Конфигурация · 9 мин

Как обновить расширение 1С через конфигуратор

Пошаговая инструкция по обновлению расширения 1С через конфигуратор: загрузка из файла, проверка совместимости, контроль ошибок и откат.

Расширения конфигурации — удобный способ доработать типовую 1С без снятия её с поддержки. Но после обновления самой конфигурации или выхода новой версии расширения его нужно обновить: загрузить свежий файл .cfe, проверить применимость и убедиться, что база работает корректно. Ошибка на этом этапе может привести к тому, что расширение отключится, а пользователи потеряют нужный функционал.

Обновление расширения через конфигуратор выполняется за несколько минут, если соблюдать правильный порядок: сделать резервную копию, загрузить файл, проверить применимость и перезапустить сеансы. Ниже разобран весь процесс — от подготовки до контроля результата, включая типичные ошибки и способы отката.

Что такое расширение конфигурации и когда его нужно обновлять

Расширение конфигурации — это отдельный файл с доработками (формы, модули, роли, иногда объекты метаданных), который подключается к базе поверх основной конфигурации без её изменения. Хранится расширение в файле с расширением .cfe, а внутри информационной базы — в специальном хранилище.

Обновление расширения требуется в нескольких ситуациях: разработчик выпустил новую версию с исправлениями или новым функционалом; основная конфигурация обновилась, и старая версия расширения стала несовместимой; в расширении обнаружена ошибка, которую нужно оперативно исправить. Признак несовместимости — расширение автоматически отключается при запуске, а в журнале регистрации появляются ошибки применимости.

Подготовка: резервная копия и проверка условий

Перед любым обновлением расширения сделайте резервную копию информационной базы. Для файловой базы достаточно скопировать файл 1Cv8.1CD, для клиент-серверной — выполнить выгрузку в .dt через конфигуратор (Файл — Выгрузить информационную базу) или средствами СУБД. Это займёт несколько минут, но позволит откатиться, если новая версия расширения окажется проблемной.

Также убедитесь, что у вас есть актуальный файл .cfe с новой версией расширения и что вы знаете точное имя расширения в базе — если расширений несколько, легко перепутать и обновить не то. Проверьте режим совместимости конфигурации и версию платформы: расширение, собранное под более новую платформу, может не загрузиться или работать некорректно.

Если база рабочая и в ней есть активные пользователи, предупредите их о технологическом окне. Строго говоря, загрузка расширения не всегда требует монопольного доступа, но перезапуск сеансов после обновления обязателен — иначе пользователи продолжат работать со старой версией кода в памяти.

Пошаговое обновление расширения через конфигуратор

Сам процесс обновления занимает несколько действий. Откройте конфигуратор под пользователем с правами администратора и выполните шаги в указанном порядке.

Порядок действий
  1. 1
    Откройте конфигуратор и авторизуйтесь под пользователем с полными правами
  2. 2
    Перейдите в меню «Конфигурация — Расширения конфигурации»
  3. 3
    В списке найдите нужное расширение и выделите его
  4. 4
    Нажмите кнопку «Загрузить из файла» (или пункт контекстного меню) и укажите файл .cfe с новой версией
  5. 5
    Подтвердите замену существующего расширения — платформа загрузит новую версию поверх старой
  6. 6
    Проверьте, что в колонке состояния нет ошибок применимости, при необходимости нажмите «Обновить» (F7) в окне расширений
  7. 7
    Закройте конфигуратор и перезапустите сеансы пользователей, чтобы изменения вступили в силу

Ключевой момент — загрузка выполняется в уже существующее расширение с тем же именем. Если загрузить файл как новое расширение (через «Добавить»), в базе окажутся два расширения с похожим функционалом, что приведёт к конфликтам. Поэтому сначала выделите старое расширение, а затем загружайте файл.

После загрузки платформа автоматически проверяет применимость расширения: совпадают ли объекты, на которые оно опирается, с текущей конфигурацией. Если конфигурация обновлялась и какой-то заимствованный объект изменился или удалён, расширение получит статус «не применимо» и фактически перестанет работать.

Проверка применимости и устранение конфликтов

В окне расширений конфигурации есть колонка, показывающая состояние каждого расширения. Зелёный признак «применяется» означает, что расширение совместимо с текущей версией конфигурации. Если статус иной — расширение загружено, но не работает, и его доработки недоступны пользователям.

Типичные причины неприменимости: в основной конфигурации переименовали или удалили объект, который изменяет расширение; изменилась сигнатура заимствованной процедуры или функции; изменились роли, на которые ссылается расширение. В этом случае файл .cfe нужно доработать: открыть расширение в конфигураторе, обновить заимствованные объекты из текущей конфигурации и исправить конфликты.

Контрольные точки

Как проверить результат

Статус расширения в окне «Расширения конфигурации»
Норма

Расширение активно, ошибок применимости нет

Тревожный признак

Статус «не применимо» или предупреждения в колонке состояния

Журнал регистрации после перезапуска сеансов
Норма

Нет ошибок, связанных с расширением

Тревожный признак

Ошибки применимости расширения или обращения к отсутствующим объектам

Работа доработанного функционала в режиме 1С:Предприятие
Норма

Изменённые формы, отчёты и кнопки работают как ожидается

Тревожный признак

Функционал отсутствует или выдаёт ошибки при вызове

Особенности обновления в клиент-серверном варианте и при подключённых расширениях из хранилища

В клиент-серверных базах процедура та же, но есть нюанс с сеансами: пользователи могут держать открытые сеансы долго, и старый код расширения останется в их памяти до перезапуска. Корректный подход — завершить сеансы через консоль кластера или дождаться, пока пользователи сами перезайдут, а затем проверить работу расширения.

Если расширение подключено к хранилищу расширений (механизм, доступный в свежих версиях платформы), обновление выполняется через получение изменений из хранилища, а не загрузкой файла. В этом случае порядок такой: обновить расширение из хранилища, затем при необходимости выполнить обновление конфигурации базы данных. Смешивать оба способа для одного расширения не стоит.

Откат к предыдущей версии расширения

Если новая версия расширения работает некорректно, откат возможен двумя способами. Первый — загрузить обратно предыдущий файл .cfe тем же способом: выделить расширение и загрузить старую версию из файла. Поэтому перед обновлением полезно сохранить текущую версию расширения в файл через кнопку «Сохранить в файл» — это займёт секунды и даст готовый вариант для отката.

Второй способ — восстановление базы из резервной копии. Он нужен, когда новая версия расширения успела повредить данные (например, некорректно отработал обработчик заполнения или обновления). В этом случае простая замена файла .cfe не вернёт уже испорченные данные.

Если откат невозможен ни одним способом, временное решение — отключить расширение, сняв флажок в списке расширений. База вернётся к типовому поведению, а расширение можно будет исправить без спешки.

Типичные ошибки
01
Загрузка файла через «Добавить» вместо обновления существующего расширения — в базе появляются два расширения, которые конфликтуют между собой
02
Отсутствие резервной копии и сохранённой старой версии .cfe — при проблемах не к чему откатиться
03
Игнорирование статуса «не применимо» — расширение загружено, но фактически не работает, а пользователи думают, что функционал на месте
04
Обновление расширения без перезапуска сеансов — пользователи продолжают работать со старой версией кода и видят непредсказуемое поведение
05
Загрузка расширения, собранного под другую версию конфигурации, без проверки на тестовой копии базы

Частые вопросы по обновлению расширений 1С

Итог

Что важно запомнить

Обновление расширения через конфигуратор — это загрузка нового файла .cfe в существующее расширение с последующей проверкой применимости и перезапуском сеансов. Обязательные условия безопасности: резервная копия базы, сохранённая старая версия расширения и контроль статуса применимости после загрузки.

Можно ли обновить расширение без остановки работы пользователей?

Загрузить файл .cfe часто можно и без монопольного режима, но изменения вступят в силу для пользователя только после перезапуска его сеанса. Для критичных доработок правильнее запланировать короткое технологическое окно и завершить все сеансы.

Что делать, если после загрузки расширение стало «не применимо»?

Откройте расширение в конфигураторе и проверьте заимствованные объекты: какие-то из них изменились или удалены в основной конфигурации. Обновите заимствованные объекты из текущей конфигурации, исправьте конфликты в коде и сохраните расширение заново.

Как узнать, какая версия расширения сейчас загружена в базе?

В окне «Расширения конфигурации» у расширения есть свойство «Версия», если разработчик её заполнил. Дополнительно можно открыть само расширение и посмотреть его свойства. Если версия не указана, ориентируйтесь на дату изменения файла .cfe, из которого выполнялась загрузка.

Обновится ли расширение автоматически при обновлении конфигурации?

Нет. Расширения хранятся отдельно и при обновлении основной конфигурации не заменяются — платформа лишь перепроверяет их применимость. Если расширение стало несовместимым, его нужно обновлять вручную новым файлом от разработчика.

Чем обновление через конфигуратор отличается от обновления в режиме 1С:Предприятие?

В режиме 1С:Предприятие расширения подключаются через раздел администрирования (если он доступен в конфигурации), и это удобно для простых случаев. Конфигуратор даёт больше контроля: видно статус применимости, можно открыть и исправить расширение, сохранить его в файл. Для рабочих баз с критичными доработками предпочтителен конфигуратор.

Можно ли обновить расширение, если конфигурация находится на поддержке без изменений?

Да, расширения как раз предназначены для этого сценария: они не меняют основную конфигурацию и не снимают её с поддержки. Обновление расширения никак не затрагивает режим поддержки типовой конфигурации.