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

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

Как получить CF-файл 1С: пошаговая инструкция

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

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

Получить CF-файл можно штатными средствами конфигуратора за несколько минут, при этом не требуются ни сторонние утилиты, ни доступ к серверу СУБД. Главное — понимать разницу между CF и DT (файлом выгрузки информационной базы), чтобы не потерять данные и не передать лишнее.

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

Что такое CF-файл и чем он отличается от DT

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

DT-файл, напротив, содержит и конфигурацию, и все данные информационной базы. Он используется для полного переноса или резервного копирования базы. Если цель — передать только доработки программиста или обновить конфигурацию у клиента без затрагивания данных, нужен именно CF.

CF или DT: что выбрать

CF

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

DT

Полный перенос базы, резервная копия, развёртывание копии для тестирования. Включает данные и конфигурацию.

Какие права и условия нужны для выгрузки

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

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

Если база работает в клиент-серверном варианте, открывать конфигуратор нужно с подключением именно к этой базе, а не к локальной копии. Частая ситуация: разработчик выгружает CF из тестовой файловой копии, а заказчик ждёт актуальную версию с сервера.

Выгрузка CF-файла через конфигуратор: пошагово

Основной способ — штатное меню конфигуратора. Порядок одинаков для большинства версий платформы 8.3.

Порядок действий
  1. 1
    Откройте нужную базу в режиме «Конфигуратор» под учётной записью с правами администратора.
  2. 2
    Если конфигурация закрыта, выполните «Конфигурация → Открыть конфигурацию» и дождитесь построения дерева объектов.
  3. 3
    Выберите пункт меню «Конфигурация → Сохранить конфигурацию в файл…».
  4. 4
    Укажите папку и имя файла, убедитесь, что тип файла — «Конфигурация (*.cf)».
  5. 5
    Нажмите «Сохранить» и дождитесь окончания процесса — появится сообщение об успешной записи.
  6. 6
    Проверьте, что файл появился в указанной папке и его размер не равен нулю.

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

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

Выгрузка конфигурации базы данных и другие сценарии

Когда рабочая конфигурация отличается от конфигурации базы данных

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

Перед передачей CF заказчику имеет смысл убедиться, что обе конфигурации совпадают: «Конфигурация → Конфигурация базы данных → Сравнить, объединить с конфигурацией БД». Если сравнение показывает пустое окно различий — версии идентичны, и неважно, какую из них выгружать.

Выгрузка CF из поставки и из хранилища

Если под рукой нет базы, но есть файл поставки (.cfu или дистрибутив обновления), CF можно получить при создании новой базы из шаблона и последующей выгрузке. Для разработки через хранилище конфигурации выгружается текущая версия из хранилища: сначала «Конфигурация → Хранилище конфигурации → Обновить конфигурацию из хранилища», затем обычное сохранение в файл.

Проверка результата

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

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

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

Наличие и размер файла
Норма

Файл .cf существует, размер больше нуля и сопоставим с размером конфигурации

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

Файл отсутствует или весит несколько килобайт — выгрузка оборвалась

Загрузка в пустую базу
Норма

Конфигурация загружается без ошибок, дерево объектов открывается

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

Ошибка формата потока или несовместимости версии платформы

Версия платформы
Норма

База-приёмник работает на платформе не старше той, где создавался CF

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

CF из новой платформы не загружается в старую

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

Типичные ошибки и ограничения

Типичные ошибки
01
Выгрузка DT вместо CF: получатель получает чужие данные, а файл весит гигабайты вместо десятков мегабайт.
02
Сохранение рабочей конфигурации с несохранёнными в базу изменениями: загрузка такого CF на целевой базе вызовет реструктуризацию, к которой администратор не готов.
03
Выгрузка из тестовой копии вместо рабочей базы: в файл попадает устаревшая версия доработок.
04
Передача CF без указания версии платформы и конфигурации: получатель не может понять, подходит ли файл его базе.
05
Прерывание выгрузки по сети при сохранении на сетевой диск: файл записывается частично и не открывается.

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

Альтернативные способы получить CF

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

bash
"C:\Program Files\1cv8\<версия>\bin\1cv8.exe" DESIGNER /F"C:\Bases\MyBase" /N"Админ" /P"пароль" /DumpCfg "D:\Backup\config.cf"

Для клиент-серверной базы вместо параметра /F указывается /S с адресом сервера и именем базы. Ключ /DumpCfg сохраняет конфигурацию в файл, /DumpDBCfg — конфигурацию базы данных. Путь к исполняемому файлу зависит от установленной версии платформы.

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

Итог

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

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

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

Можно ли получить CF-файл без конфигуратора?

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

Почему пункт «Сохранить конфигурацию в файл» неактивен?

Чаще всего не открыта конфигурация (нужно «Конфигурация → Открыть конфигурацию») либо у пользователя нет административных прав. Также проверьте, что вы вошли именно в конфигуратор, а не в режим «Предприятие».

Можно ли из CF-файла восстановить данные базы?

Нет. CF содержит только структуру и код, данные в него не попадают. Для восстановления данных нужна выгрузка в DT, резервная копия файла 1Cv8.1CD или копия на уровне СУБД.

CF загружается с ошибкой «Несовместимая версия» — что делать?

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

Как передать только часть доработок, а не всю конфигурацию?

Штатно CF всегда содержит конфигурацию целиком. Для точечной передачи используйте механизм сравнения и объединения конфигураций: получатель загружает CF через «Сравнить, объединить с конфигурацией из файла» и отмечает только нужные объекты.

Безопасно ли передавать CF-файл третьим лицам?

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