Разработка и Конфигурация · 10 мин
Как сохранить расширение 1С: пошаговая инструкция
Как сохранить расширение 1С в файл cfe, выгрузить через конфигуратор, перенести между базами и не потерять доработки при обновлении конфигурации.
Расширение конфигурации в 1С — это отдельный слой доработок, который хранится в информационной базе и может быть потерян при неаккуратном обновлении, переносе базы или смене сервера. Чтобы не зависеть от таких рисков, расширение нужно периодически сохранять в файл формата CFE — тогда его можно восстановить в любой момент или перенести в другую базу.
Сохранить расширение можно двумя способами: через конфигуратор (выгрузка в файл) и через командную строку в пакетном режиме. Оба варианта дают одинаковый результат — файл с расширением *.cfe, который содержит все объекты, формы, макеты и код, добавленные доработкой.
Ниже разобраны оба способа, проверка результата, типичные ошибки и порядок восстановления расширения из файла.
Что такое файл расширения и когда его нужно сохранять
Расширение конфигурации хранится внутри информационной базы, а не в отдельном файле. Это удобно для работы, но создаёт риск: при обновлении конфигурации поставщиком, восстановлении базы из старой копии или миграции на другой сервер расширение может отключиться или быть утеряно вместе с базой.
Выгрузка в файл CFE решает эту проблему. Файл содержит полную копию расширения: заимствованные объекты, собственные объекты, модули, формы, роли и макеты. Загрузив его в другую базу той же конфигурации, вы получаете идентичную доработку без ручного переноса кода.
Сохранять расширение в файл стоит в таких ситуациях:
- перед обновлением конфигурации на новый релиз;
- перед переносом базы на другой сервер или в облако;
- перед передачей доработки коллеге, франчайзи или заказчику;
- после завершения этапа разработки — как точка резервного копирования;
- перед экспериментами с изменением расширения, чтобы была точка отката.
Как сохранить расширение через конфигуратор
Основной способ — выгрузка через конфигуратор. Для выполнения нужны права администратора и монопольный доступ не требуется, но пользователи не должны активно менять это же расширение в другом сеансе.
- 1Откройте базу в конфигураторе под пользователем с правами администратора.
- 2Перейдите в меню: Конфигурация → Расширения конфигурации.
- 3В списке выделите нужное расширение.
- 4Откройте меню Конфигурация → Сохранить в файл (или правой кнопкой по расширению → Сохранить в файл).
- 5Укажите папку и имя файла, например Доработки_Подсистема.cfe, и подтвердите сохранение.
- 6Проверьте, что файл появился в указанной папке и имеет ненулевой размер.
Если расширений несколько, операцию повторяют для каждого — пакетной выгрузки всех расширений одной командой в интерфейсе конфигуратора нет. Имена файлам лучше давать осмысленные: с названием расширения и датой, чтобы потом различать версии.
Обратите внимание на колонку «Активно» в списке расширений. Сохранить в файл можно и неактивное расширение — это удобно, если доработка временно отключена, но её код нужно сохранить.
Как выгрузить расширение через командную строку
Для автоматизации резервного копирования удобнее пакетный режим конфигуратора. Команда DumpConfigExtensionToFile выгружает расширение по его имени без открытия интерфейса.
"C:\Program Files\1cv8\<версия>\bin\1cv8.exe" DESIGNER /F"D:\Bases\Trade" /NАдминистратор /PПароль /DumpConfigExtensionToFile "D:\Backup\Ext.cfe" -Extension ИмяРасширения /DisableStartupDialogs /DisableStartupMessagesДля клиент-серверной базы вместо /F используется параметр /S с адресом сервера и именем базы, например /S"server\base". Имя расширения указывается точно так, как оно задано в свойствах расширения, с учётом регистра и без пробелов, если их нет в имени.
Такую команду удобно поместить в bat-файл и запускать по расписанию через планировщик задач Windows — тогда копии расширений будут создаваться автоматически, например каждую ночь. Результат выполнения проверяйте по коду возврата и по наличию файла в целевой папке.
Как загрузить сохранённое расширение в базу
Обратная операция — загрузка из файла. Она нужна при переносе доработки в другую базу или при восстановлении после сбоя.
- Откройте конфигуратор целевой базы и перейдите в список расширений конфигурации.
- Выберите пункт меню Конфигурация → Загрузить из файла и укажите CFE-файл.
- Если расширение с таким именем уже есть, платформа предложит заменить его — подтвердите, если нужно обновить доработку.
- Обновите конфигурацию базы данных (клавиша F7), чтобы изменения вступили в силу.
- Проверьте, что расширение активно и не помечено как несовместимое.
Загрузка требует монопольного режима на этапе обновления конфигурации базы данных: сеансы пользователей придётся завершить. В клиент-серверном варианте это делается через консоль кластера, в файловом — через диалог активных пользователей.
Проверка результата и совместимости
После сохранения или загрузки расширения убедитесь, что всё прошло корректно. Основные контрольные точки:
Как проверить результат
Файл *.cfe существует, размер больше нуля, дата изменения свежая
Файл отсутствует или нулевого размера — выгрузка не выполнилась
Расширение активно, нет предупреждений о несовместимости
Жёлтый или красный значок, сообщение о нарушении целостности
Добавленные расширением кнопки, формы и отчёты открываются и работают
Ошибки при открытии форм, отсутствуют элементы интерфейса
Режим совместимости расширения не выше режима конфигурации
Расширение отключается из-за несоответствия режима совместимости
Частая причина проблем после загрузки — несовпадение версий конфигурации. Расширение, созданное для одного релиза, может конфликтовать с другим, если поставщик переименовал или удалил заимствованные объекты. В этом случае расширение нужно открыть в конфигураторе и исправить ссылки на изменённые объекты.
Типичные ошибки при сохранении и переносе
Отдельная ошибка — путать сохранение расширения с выгрузкой конфигурации в файл CF или с выгрузкой базы в DT. Файл конфигурации и файл базы не содержат расширений в пригодном для отдельной загрузки виде: при восстановлении из DT расширения вернутся вместе с базой, но извлечь или перенести их отдельно из этих файлов нельзя.
Удобно хранить выгруженные CFE-файлы рядом с проектной документацией или в git-репозитории с пометкой версии конфигурации, для которой они собраны. Это сильно упрощает поиск совместимой версии при откате.
Сравнение способов сохранения
Сравнение вариантов
Подходит для разового сохранения и передачи доработки. Ограничение: только ручная работа, по одному расширению за раз.
Подходит для регулярного резервного копирования и автоматизации. Ограничение: нужно знать точное имя расширения и параметры подключения к базе.
Подходит как временный вариант в процессе разработки. Ограничение: полная зависимость от целостности базы, перенос затруднён.
На практике способы комбинируют: ручная выгрузка — перед рискованными операциями вроде обновления релиза, пакетная — как регулярная страховка. Для командной разработки дополнительно применяют хранилище конфигурации или выгрузку расширения в файлы конфигурации (формат XML) для работы с системами контроля версий.
Что важно запомнить
Расширение сохраняется в файл CFE через конфигуратор (Конфигурация → Расширения конфигурации → Сохранить в файл) или командой DumpConfigExtensionToFile в пакетном режиме. Выгружайте расширения перед обновлениями и переносами, давайте файлам версионные имена и проверяйте совместимость после загрузки.
Частые вопросы
Можно ли сохранить расширение без прав администратора?
Нет. Для работы со списком расширений в конфигураторе и для выгрузки в файл нужны административные права на информационную базу. Обычный пользователь в режиме предприятия может только видеть эффект работы расширения, но не выгружать его.
Сохранится ли расширение при выгрузке базы в файл DT?
Да, расширения хранятся внутри информационной базы и попадают в выгрузку DT вместе с ней. Однако извлечь расширение из DT отдельно нельзя — только загрузить всю базу и затем выгрузить расширение штатным способом. Поэтому DT не заменяет регулярную выгрузку CFE.
Что делать, если после обновления конфигурации расширение отключилось?
Откройте список расширений в конфигураторе и посмотрите причину в колонке состояния — обычно это несовместимость с новым релизом. Загрузите сохранённый CFE-файл, откройте расширение и исправьте ссылки на изменённые поставщиком объекты, затем обновите конфигурацию базы данных.
Можно ли открыть файл CFE и посмотреть код?
Напрямую в текстовом редакторе — нет, это упакованный бинарный формат. Чтобы увидеть код, загрузите CFE в базу через конфигуратор и откройте расширение. Для хранения исходников в читаемом виде используйте выгрузку расширения в XML-файлы конфигурации.
Как перенести расширение из файловой базы в клиент-серверную?
Выгрузите расширение в CFE из файловой базы, затем откройте конфигуратор серверной базы и загрузите файл через Конфигурация → Загрузить из файла. Условие — одинаковая конфигурация и совместимый релиз в обеих базах, иначе расширение может не заработать.
Нужно ли сохранять расширения, купленные на маркетплейсе?
Да. Купленное расширение тоже хранится в базе и подвержено тем же рискам. Дистрибутив от поставщика обычно можно скачать повторно, но если вы дорабатывали расширение под себя, ваша версия существует только в базе — выгружайте её в CFE после каждого изменения.