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

Администрирование · 10 мин

Как обновить 1С, если в базе есть расширения

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

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

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

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

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

Расширение хранится отдельно от основной конфигурации и «накладывается» на неё при запуске. Оно заимствует объекты — формы, модули, процедуры — и опирается на их структуру. Когда конфигурация обновляется, заимствованные объекты могут измениться: процедура переименована, параметры метода изменились, реквизит удалён.

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

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

Подготовка: что сделать до обновления

Первый и обязательный шаг — резервная копия. Для файловой базы достаточно выгрузки через «Конфигуратор → Администрирование → Выгрузить информационную базу». Для клиент-серверной базы лучше дополнительно сделать копию средствами СУБД. Расширения хранятся внутри базы, поэтому выгрузка .dt сохраняет и их.

Второй шаг — инвентаризация расширений. Откройте в режиме «Предприятие» или в конфигураторе список расширений (в типовых: «Администрирование → Печатные формы, отчеты и обработки → Расширения» либо «Все функции → Стандартные → Управление расширениями конфигурации») и зафиксируйте: название, версию, назначение, кто разработчик. Сохраните сами файлы расширений (.cfe) отдельно — через кнопку «Сохранить в файл».

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

Порядок подготовки
  1. 1
    Сделайте выгрузку базы (.dt) и убедитесь, что файл открывается на тестовом стенде
  2. 2
    Зафиксируйте список расширений: названия, версии, назначение
  3. 3
    Сохраните каждое расширение в файл .cfe
  4. 4
    Запросите у разработчиков обновлённые версии расширений под новый релиз
  5. 5
    Разверните копию базы для тестового обновления

Тестовое обновление на копии базы

Главное правило безопасного обновления с расширениями — сначала отработать всё на копии. Разверните выгрузку на отдельном сервере или в отдельной файловой базе и выполните обновление конфигурации стандартным способом: через поддержку («Конфигурация → Поддержка → Обновить конфигурацию») или через cf-файл поставки.

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

Затем пройдите по сценариям, которые покрывают расширения: откройте доработанные формы, выполните изменённые операции, сформируйте отчёты. Ошибки вида «Метод объекта не обнаружен» или «Поле объекта не обнаружено» — типичный признак того, что расширение ссылается на изменённый в новом релизе объект.

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

Как проверить результат тестового обновления

Список расширений после обновления
Норма

Все расширения имеют статус «Подключено»

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

Расширение отключено или помечено как неприменимое

Журнал регистрации
Норма

Нет ошибок подключения расширений

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

Ошибки применимости с указанием объектов

Доработанные формы и операции
Норма

Формы открываются, операции выполняются без ошибок

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

Ошибки «Метод не обнаружен», «Поле не обнаружено»

Обновление рабочей базы: пошаговый порядок

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

Порядок действий на рабочей базе:

  1. Завершите сеансы пользователей, установите блокировку регламентных заданий и соединений.
  2. Сделайте контрольную выгрузку базы непосредственно перед обновлением.
  3. Обновите конфигурацию базы данных через конфигуратор.
  4. Дождитесь выполнения обработчиков обновления (в клиент-серверном варианте следите за ходом отложенных обработчиков).
  5. Откройте список расширений и проверьте их статус.
  6. Загрузите адаптированные версии расширений вместо несовместимых (кнопка «Заменить» или удаление и добавление заново).
  7. Снимите блокировку и запустите ограниченную группу пользователей для проверки.

Если отложенные обработчики обновления ещё выполняются, не спешите с выводом о поломке расширения: часть проверок корректно делать только после завершения всех обработчиков.

Что делать, если расширение сломалось после обновления

Самый частый случай — расширение отключено из-за нарушения применимости. Откройте расширение в конфигураторе («Конфигурация → Расширения конфигурации»), загрузите его и выполните проверку: конфигуратор покажет список заимствованных объектов, которые больше не соответствуют основной конфигурации.

Типовые ситуации и способы исправления:

  • Переименована или удалена процедура/функция — найдите в новом релизе объект-замену (часто разработчики типовых оставляют аналог в другом общем модуле) и обновите заимствование.
  • Изменился состав параметров метода — скорректируйте вызов в расширении под новую сигнатуру.
  • Изменилась форма — заново заимствуйте форму в расширение и перенесите свои доработки на новую версию.
  • Изменились роли или права — проверьте роли, добавленные расширением, и при необходимости обновите их состав.

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

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

Как снизить риски в будущем

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

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

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

Способы реализации доработок и их устойчивость к обновлениям

Расширение конфигурации

Гибко и не требует снятия с поддержки, но требует проверки совместимости при каждом обновлении

Внешние отчёты и обработки (БСП)

Наиболее устойчивы к обновлениям, подходят для печатных форм и отчётов, но не могут менять формы и логику документов

Изменение основной конфигурации

Доработка не ломается отдельно, но усложняет каждое обновление сравнением и объединением конфигураций

Часто задаваемые вопросы

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

Нет, в общем случае удалять расширения не требуется — обновление конфигурации их не затрагивает. Удаление имеет смысл только если расширение мешает самому процессу обновления (например, вызывает ошибку в обработчике обновления), и то сначала проблему стоит воспроизвести на копии.

Расширение после обновления показывает статус «Отключено». Что это значит?

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

Можно ли обновляться в автоматическом режиме через интернет, если есть расширения?

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

Где хранятся расширения и попадают ли они в резервную копию?

Расширения хранятся внутри информационной базы, поэтому выгрузка .dt и копия средствами СУБД включают их. Тем не менее рекомендуется дополнительно сохранять файлы .cfe отдельно — так проще сравнивать версии и откатывать отдельное расширение без восстановления всей базы.

Обновление прошло, расширения подключены, но одна форма работает неправильно. Что проверить?

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

Как узнать заранее, сломается ли расширение при переходе на конкретный релиз?

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

Итог

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

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