Расширение мешает работе базы: как его деактивировать или убрать

· 9 мин

Содержание

Чтобы отключить расширение 1С 8.3 в конфигураторе, откройте Конфигурация → Расширения конфигурации, найдите нужную строку и снимите флажок в колонке «Активно». Расширение останется в базе со всеми своими данными, но при следующем входе пользователей платформа его не подключит. Если расширение нужно убрать насовсем, в том же окне есть команда удаления.

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

Как устроены расширения и кто вправе их отключать

Расширение — это отдельная мини-конфигурация, которая хранится внутри информационной базы и подключается поверх основной при старте сеанса. Механизм появился в платформе 8.3.6, а флажок активности — в более поздних версиях. Если флажка «Активно» в окне нет, платформа устарела, и остаётся только удаление.

У каждого расширения есть несколько свойств, которые влияют на отключение:

  • 🧩 Назначение — «Исправление», «Адаптация» или «Дополнение». От назначения зависит порядок применения, когда расширений несколько.
  • 🗄️ Изменяет структуру данных — если расширение добавляет свои справочники, документы или реквизиты, в базе появляются его таблицы.
  • 🛡️ Безопасный режим и защита от опасных действий — ограничивают то, что код расширения может делать на компьютере и сервере.
  • ✅ Активно — подключать ли расширение при запуске сеансов.

Какие права нужны

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

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

Шаг 1. Входим в конфигуратор под администратором

  1. Закройте лишние окна 1С на своём компьютере.
  2. Запустите 1С, в списке баз выделите нужную и нажмите Конфигуратор.
  3. Выберите пользователя с полными правами и введите пароль.
  4. В главном меню откройте Конфигурация → Расширения конфигурации.

Для изменения флажка «Активно» монопольный доступ не нужен: остальные пользователи могут продолжать работу. Монопольный режим потребуется, если вы будете обновлять структуру базы после удаления расширения, которое добавляло свои таблицы.

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

Если окно «Расширения конфигурации» не открывается

Чаще всего пункт недоступен из-за прав: у вашего пользователя нет права на администрирование. Войдите под другим администратором. Если пункта нет в меню вовсе, проверьте версию платформы в Справка → О программе: в версиях до 8.3.6 расширений не было.

Шаг 2. Снимаем флажок «Активно» в списке расширений

В окне расширений каждая строка — одно расширение. Колонки показывают имя, синоним, версию, назначение и флажки свойств.

  1. Найдите строку с расширением. Ориентируйтесь на колонку «Имя»: синонимы у разных разработчиков бывают похожими.
  2. Снимите флажок в колонке «Активно».
  3. Убедитесь, что флажок остался снятым после закрытия и повторного открытия окна.
  4. Попросите пользователей перезайти в программу. Уже открытые сеансы работают с тем набором расширений, с которым стартовали.

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

Отключить или удалить: что выбрать

ДействиеЧто происходит с кодомЧто происходит с даннымиКогда выбирать
Снять «Активно»Остаётся в базе, не подключаетсяСохраняютсяНужно быстро убрать сбой и разобраться потом
УдалитьУдаляется из базыТаблицы расширения удаляются вместе с нимРасширение больше не нужно
Сохранить в .cfe и удалитьКопия лежит в файлеУдаляютсяХотите очистить базу, но оставить возможность вернуть

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

Как сохранить расширение в файл перед удалением

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

Отключение расширений без конфигуратора, из режима 1С:Предприятие

В типовых конфигурациях на БСП (Бухгалтерия 3.0, ЗУП 3.1, УТ 11 и другие) расширения доступны прямо из пользовательского режима. Это удобно, когда у администратора нет доступа к конфигуратору или база в облаке.

КонфигурацияГде список расширений
Бухгалтерия предприятия 3.0Администрирование → Печатные формы, отчеты и обработки → Расширения
ЗУП 3.1Администрирование → Печатные формы, отчеты и обработки → Расширения
Управление торговлей 11НСИ и администрирование → Печатные формы, отчеты и обработки → Расширения

Порядок действий:

  1. Войдите в программу под пользователем с правами администратора.
  2. Откройте список расширений по пути из таблицы.
  3. Найдите расширение и снимите у него флажок подключения в колонке рядом с именем.
  4. Перезапустите программу — форма сама предложит это сделать.

Здесь же есть команда удаления. Предупреждение о потере данных работает так же, как в конфигураторе.

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

Файловая и клиент-серверная база: в чём разница

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

Файловая база

Расширения хранятся в том же файле 1Cv8.1CD, что и данные. Флажок «Активно» меняется сразу, а пользователи увидят результат после перезапуска.

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

Клиент-серверная база

В серверной базе расширения лежат в таблицах СУБД, а применяются рабочими процессами кластера. После снятия флажка:

  1. Сообщите пользователям, что нужно перезайти.
  2. Проверьте в консоли кластера, что старые сеансы закрылись.
  3. Сеансы, которые не закрываются сами, можно завершить из консоли.

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

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

Базы с разделением данных

В базах с разделителями (облачные решения, «1С:Фреш») расширение может действовать на всю базу или только на одну область данных. Это видно в колонке «Область действия» окна расширений. Расширение, установленное для всей базы, из области данных не отключить — это делает администратор сервиса.

Когда отключить расширение не получается

Диагностика: выберите симптом

Разбираемся с несовместимостью после обновления

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

Порядок разбора:

  1. Отключите расширение, чтобы пользователи могли работать.
  2. Откройте его конфигурацию: в окне расширений выделите строку и откройте дерево объектов.
  3. Через меню Конфигурация выполните проверку применимости расширения. Платформа покажет объекты, которых больше нет или которые изменились.
  4. Передайте список разработчику или исправьте заимствованные объекты сами.
  5. После исправления включите флажок «Активно» и проверьте работу на копии базы.

Если сбоит конкретная функция, а расширений несколько

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

Командная строка, ibcmd и код: другие способы отключения

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

Пакетный режим конфигуратора

Конфигуратор умеет работать без интерфейса через ключ DESIGNER и параметры пакетного режима. Для расширений у параметров /LoadCfg, /DumpCfg, /UpdateDBCfg и /DeleteCfg есть уточнение -Extension <имя>. Отдельного параметра для флажка «Активно» в пакетном режиме нет, зато можно удалить расширение :

"C:\Program Files\1cv8\8.3.24.1548\bin\1cv8.exe" DESIGNER /F "D:\Bases\Buh" /N "Администратор" /P "пароль" /DeleteCfg -Extension ИмяРасширения /Out "D:\Logs\del_ext.log"

Номер платформы в пути замените на свой. Для серверной базы вместо /F указывают /S "сервер\имябазы". Результат смотрите в файле журнала из /Out.

Перед запуском скрипта сохраните расширение в .cfe и сделайте выгрузку базы. Пакетный режим не задаёт уточняющих вопросов.

Утилита ibcmd

В свежих версиях платформы есть автономная утилита ibcmd. У неё есть группа команд для расширений: ibcmd infobase config extension list показывает список, а команды изменения свойств позволяют выключить активность расширения без удаления. Точный набор ключей зависит от версии платформы — посмотрите его командой ibcmd help infobase config extension.

Программно, из кода

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

&НаСервере
Процедура ОтключитьРасширениеНаСервере(ИмяРасширения)
	Для Каждого Расширение Из РасширенияКонфигурации.Получить() Цикл
		Если Расширение.Имя = ИмяРасширения Тогда
			Расширение.Активно = Ложь;
			Расширение.Записать();
			Сообщить("Расширение " + Расширение.Имя + " отключено. Перезапустите сеансы.");
			Возврат;
		КонецЕсли;
	КонецЦикла;
	Сообщить("Расширение " + ИмяРасширения + " не найдено.");
КонецПроцедуры

Код подходит для внешней обработки, которую администратор запускает в нужной базе. Изменения вступят в силу для новых сеансов, как и при снятии флажка вручную.

Сравнение способов

СпособНужен конфигураторСохраняет данныеПодходит для массовых операций
Флажок «Активно» в конфигуратореДаДаНет
Список расширений в режиме 1С:ПредприятиеНетДаНет
/DeleteCfg -Extension в пакетном режимеПакетный запускНетДа
ibcmdНетДа, если менять активностьДа
Код с РасширенияКонфигурацииНетДаДа, через обработку

Частые вопросы

Пропадут ли документы, созданные в расширении, если его отключить?
Нет. При снятии флажка «Активно» данные остаются в базе. Они снова станут видны, когда расширение включат обратно.
Можно ли отключить расширение только для одного пользователя?
Штатного флажка «активно для пользователя» нет: активность общая для базы. Доступ к доработкам отдельных пользователей ограничивают ролями, которые добавляет само расширение.
Нужно ли обновлять конфигурацию базы данных после снятия флажка?
Нет, флажок «Активно» не требует обновления структуры. Обновление понадобится, если вы меняете состав объектов самого расширения.
Как понять, какое расширение добавило кнопку или печатную форму?
Откройте в конфигураторе каждое расширение и найдите в его дереве нужную форму или команду. Быстрее — отключать расширения по одному и смотреть, когда элемент пропадёт.
Включится ли расширение само после обновления конфигурации?
Нет. Флажок «Активно» сохраняется при обновлении основной конфигурации. Если расширение после обновления несовместимо, платформа сообщит об этом при старте сеанса.