Чистим базу 1С от расширений: Конфигуратор, пакетный режим и кэш

· 9 мин

Содержание

Удалить все расширения в 1С быстрее всего в Конфигураторе: Конфигурация → Расширения конфигурации, выделить расширение в списке и нажать «Удалить», повторить для каждого. Если расширений много или баз несколько, то же самое делает одна команда пакетного режима /DeleteCfg -AllExtensions. После удаления пользователи должны перезайти в базу, а при странностях интерфейса — очистить кэш запуском с ключом /ClearCache.

Порядок общий для платформы 1С:Предприятие 8.3 и не зависит от конфигурации: Бухгалтерия, ЗУП, УТ или ERP чистятся одинаково. Расширения хранятся внутри информационной базы, а не в файлах на диске, поэтому главная чистка идёт в самой базе. Каталоги профиля и кэш — второй, вспомогательный шаг.

Что подключено к базе и что пропадёт вместе с расширениями

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

Список в режиме предприятия открывается двумя путями:

  1. В конфигурациях на БСП (Бухгалтерия 3.0, ЗУП 3.1, УТ 11, КА, ERP): Администрирование → Печатные формы, отчеты и обработки → Расширения.
  2. В любой конфигурации: главное меню → Все функции → Стандартные → Управление расширениями конфигурации. Если пункта «Все функции» нет, включите его: главное меню → Сервис → Параметры → флажок «Отображать команду “Все функции”».

Для каждого расширения выпишите имя, версию и назначение. Его тип подскажет имя:

Признак в спискеЧто это обычноМожно ли удалять
Имя начинается с EF_Исправление (патч) от разработчика типовойМожно, но вернётся исправленная ошибка
Понятное имя: «ПечатьДоговора», «ОбменССайтом»Доработка вашего программиста или партнёраТолько после согласования с автором
Расширение от поставщика отраслевого решенияМодуль интеграции, маркировка, ЭДО-коннекторУдаление отключит функцию

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

Поэтому первым делом выгрузите базу: в Конфигураторе Администрирование → Выгрузить информационную базу (файл .dt). Это единственная страховка, которая возвращает и расширения, и их данные одним действием.

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

Удаление расширений через Конфигуратор

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

  1. Запустите базу в режиме «Конфигуратор» под пользователем с правом «Администрирование».
  2. Откройте Конфигурация → Расширения конфигурации. Появится окно со списком всех расширений базы.
  3. Сохраните каждое расширение в файл .cfe: выделите строку, в командной панели окна откройте меню «Конфигурация» и выберите «Сохранить в файл». Файлы пригодятся, если что-то придётся вернуть.
  4. Выделите расширение и нажмите «Удалить» на панели окна (или клавишу Delete).
  5. Подтвердите удаление. Если у расширения есть свои данные, появится второе предупреждение — прочитайте его, а не закрывайте не глядя.
  6. Повторите шаги 4–5 для остальных строк, пока список не опустеет.

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

Если в окне расширений открыта конфигурация самого расширения (дерево объектов справа), закройте её перед удалением. Иначе Конфигуратор попросит сохранить или отменить изменения в ней.

Если кнопка «Удалить» не срабатывает

  • 🔑 Не хватает прав. Пользователь Конфигуратора должен иметь право «Администрирование». Войдите под администратором базы.
  • 🧩 Расширение открыто в соседнем окне. Закройте все окна с объектами расширения и повторите.
  • 🌐 База в режиме разделения данных. Расширения, установленные в отдельной области, видны и удаляются только из этой области, а не из общего списка.

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

Как удалить расширения из режима 1С:Предприятие

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

В списке Администрирование → Печатные формы, отчеты и обработки → Расширения:

  1. Выделите расширение.
  2. Нажмите «Удалить» в командной панели списка или в меню «Ещё».
  3. Подтвердите действие и дождитесь, пока строка исчезнет.
  4. Перезапустите программу: изменения вступают в силу в новом сеансе.

В стандартной обработке «Управление расширениями конфигурации» логика та же: строка расширения, кнопка удаления, подтверждение. Там же видны флажки «Активно», «Безопасный режим» и «Защита от опасных действий», которые полезно проверить перед решением.

Исправления EF_ в типовых на БСП устанавливаются и удаляются через раздел обновления программы: Администрирование → Обслуживание → Обновление версии программы. После перехода на новый релиз ставшие ненужными исправления программа убирает сама, вручную их чистить обычно не приходится.

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

Удалить все расширения разом: пакетный запуск и обработка

Командная строка 1cv8

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

"C:\Program Files\1cv8\8.3.xx.xxxx\bin\1cv8.exe" DESIGNER /F "D:\Bases\Buh" /N "Администратор" /P "пароль" /DeleteCfg -AllExtensions /Out "D:\Logs\delete_ext.log"

Для клиент-серверной базы вместо /F укажите сервер и имя базы: /S "srv1c\buh". Вместо 8.3.xx.xxxx подставьте номер своей платформы.

Чтобы удалить одно конкретное расширение, используйте -Extension с его именем:

1cv8.exe DESIGNER /F "D:\Bases\Buh" /N "Администратор" /P "пароль" /DeleteCfg -Extension "ПечатьДоговора" /Out "D:\Logs\delete_ext.log"

После выполнения откройте файл из /Out. Пустой лог или отсутствие строк об ошибках означает успех. Сообщение о неверном пароле или занятой базе — повод повторить запуск.

Внешняя обработка с кодом

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

&НаКлиенте
Процедура УдалитьВсе(Команда)
    Количество = УдалитьВсеНаСервере();
    Сообщить(СтрШаблон("Удалено расширений: %1", Количество));
КонецПроцедуры

&НаСервереБезКонтекста
Функция УдалитьВсеНаСервере()
    Расширения = РасширенияКонфигурации.Получить();
    Для Каждого Расширение Из Расширения Цикл
        Расширение.Удалить();
    КонецЦикла;
    Возврат Расширения.Количество();
КонецФункции

РасширенияКонфигурации.Получить() возвращает обычный массив описаний, поэтому удаление внутри цикла его не портит. Сохраните обработку в файл .epf и откройте её в базе через Файл → Открыть.

Обработке нужны административные права. Если база выдаёт «Нарушение прав доступа» или ругается на безопасный режим, запускайте её под пользователем с ролью «Полные права». Расширения с данными удалятся молча, без дополнительного вопроса, — поэтому выгрузка .dt перед запуском здесь обязательна.

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

СпособКогда подходитРиск
Конфигуратор, по одному1–5 расширений, нужен контрольМинимальный: видно каждое предупреждение
Список в режиме предприятияНет доступа к КонфигураторуНе сработает, если база не открывается
/DeleteCfg -AllExtensionsМного баз, скрипты, база не стартуетУдаляет всё без вопросов
Внешняя обработкаТолько пользовательский режим, много расширенийУдаляет всё без вопросов, нужны полные права

Чистка кэша и каталогов профиля после удаления расширений

Сами расширения на диске не лежат. Но клиент 1С кэширует метаданные и формы, и после удаления на некоторых рабочих местах ещё какое-то время всплывают старые команды или ошибки форм.

Самый безопасный способ сбросить кэш — один раз запустить базу с ключом:

"C:\Program Files\1cv8\common\1cestart.exe" ENTERPRISE /F "D:\Bases\Buh" /ClearCache

В клиент-серверном варианте /F замените на /S "srv1c\buh". Если ярлыка нет, ключ /ClearCache можно добавить в поле «Дополнительные параметры запуска» в свойствах базы в окне запуска.

Ручная очистка затрагивает каталоги профиля Windows:

  • 📁 %APPDATA%\1C\1cv8 — кэш баз в папках с GUID-именами;
  • 📁 %LOCALAPPDATA%\1C\1cv8 — ещё одна часть кэша, тоже по GUID;
  • 📁 %APPDATA%\1C\1cv8\ExtCompT — установленные внешние компоненты (сканеры, ККТ, криптография).

Папки с GUID можно удалять целиком при закрытой программе: при следующем входе 1С создаст их заново. Список баз (ibases.v8i) при этом не трогайте — он лежит в %APPDATA%\1C\1CEStart.

Каталог ExtCompT к расширениям конфигурации отношения не имеет. Внешние компоненты — это драйверы оборудования и библиотеки, а не .cfe. Удалите его — и придётся заново устанавливать драйверы кассы, сканера и криптопровайдера.

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

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

Сброс пользовательских настроек после чистки

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

В конфигурациях на БСП настройки чистятся без программиста:

  1. Откройте Администрирование → Настройки пользователей и прав → Настройки пользователей.
  2. Выберите пользователя.
  3. На вкладках будут внешний вид, настройки отчётов и прочие настройки. Отметьте нужные строки или всё сразу.
  4. Нажмите команду очистки и подтвердите.

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

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

Как держать расширения под контролем

Нужда «удалить все расширения» обычно возникает из-за беспорядка: за пару лет в базу поставили десяток доработок, и никто не помнит, какая зачем. Чтобы чистка не повторялась, заведите несколько простых правил.

  • 📋 Реестр расширений. Таблица: имя, версия, назначение, автор, дата установки, где лежит исходный .cfe. Пять минут на запись при установке экономят день разбирательств.
  • 🔒 Флажок «Защита от опасных действий». Не снимайте его без причины: он заставляет пользователя подтверждать установку расширений из файлов.
  • 🛡️ Безопасный режим. Расширения со стороны держите в безопасном режиме, если автор не обосновал обратное.
  • 🧪 Сначала на копии. Новое расширение ставьте в копию базы , проверяйте день-два и только потом переносите в рабочую.
  • 🔄 Проверка перед обновлением релиза. Перед обновлением конфигурации проверьте в Конфигураторе, применимы ли расширения к новой версии. Неприменимые обновите у автора или отключите.
Перед удалением расширений
Выполнено: 0 / 5

Частые вопросы об удалении расширений

Можно ли вернуть удалённое расширение?
Да, если сохранён файл .cfe: загрузите его в Конфигураторе в окне расширений. Данные расширения так не вернутся — только из выгрузки .dt.
Удаляются ли расширения при обновлении конфигурации?
Нет. Обновление релиза расширения не удаляет. Исключение — исправления EF_, которые программа убирает сама, когда ошибка исправлена в новом релизе.
Чем отключение отличается от удаления?
Отключённое расширение остаётся в базе вместе с данными, но не применяется. Удалённое пропадает вместе со своими объектами и их данными.
Какая версия платформы нужна для работы с расширениями?
Расширения конфигурации появились в платформе 8.3.6. В более ранних версиях их нет, а доработки вносились прямо в конфигурацию.
Нужно ли выгонять пользователей из базы для удаления?
Нет, монопольный режим не нужен. Но работающие пользователи увидят изменения только после перезапуска своего сеанса.