Файл конфигурации .cf: что с ним можно сделать в Конфигураторе и из командной строки

· 9 мин

Содержание

Открыть файл 1С CF можно только в Конфигураторе: создайте пустую информационную базу, зайдите в неё в режиме Конфигуратора и выполните Конфигурация → Загрузить конфигурацию из файла.... Если базу трогать не нужно и нужно лишь посмотреть, что внутри, подойдёт сравнение Конфигурация → Сравнить конфигурации... с выбором файла. Двойной щелчок по .cf ничего не даст: это не документ, а упакованная конфигурация.

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

Что лежит внутри файла .cf и чем он отличается от DT, CFU и CFE

Файл .cf — это вся конфигурация в одном двоичном контейнере: справочники, документы, регистры, формы, макеты, модули и сведения о поддержке. Данных пользователей в нём нет. Ни одной проводки, ни одного контрагента.

Поэтому из CF получается «голая» программа. Запустить её можно, но база будет пустой.

РасширениеЧто внутриЧем открывают
.cfПолная конфигурация без данныхКонфигуратор: загрузка, сравнение, объединение
.cfuФайл обновления: разница между версиямиКонфигуратор: обновление базы, стоящей на поддержке
.dtВыгрузка базы целиком: конфигурация + данныеКонфигуратор: Администрирование → Загрузить информационную базу...
.cfeРасширение конфигурацииКонфигуратор: окно расширений, или режим «Предприятие» через раздел администрирования
.epf / .erfВнешняя обработка / внешний отчётМеню Файл → Открыть в режиме «Предприятие»

Где обычно берут CF:

  • 📦 в дистрибутиве типовой конфигурации — файл 1Cv8.cf рядом с 1Cv8.cfu;
  • 💾 из рабочей базы через Конфигурация → Сохранить конфигурацию в файл...;
  • 🧑‍💻 от программиста как результат доработки;
  • 📁 из каталога шаблонов, куда установщик конфигурации распаковывает дистрибутив (по умолчанию %APPDATA%\1C\1cv8\tmplts).

Перепутать .cf и .dt — частая история. Если вам прислали «базу» и вы ждёте внутри документы, просите .dt. Из .cf данные не достать никаким способом: их там нет.

Как открыть CF через Конфигуратор: загрузка в новую базу

Самый понятный путь. Рабочие базы при этом не затрагиваются.

Шаг 1. Создайте пустую базу

  1. Запустите 1С и в окне выбора баз нажмите Добавить....
  2. Выберите «Создание новой информационной базы».
  3. На следующем шаге отметьте вариант создания базы без конфигурации — он предназначен как раз для разработки новой конфигурации или загрузки выгруженной ранее.
  4. Задайте имя, например «Проверка CF», и каталог на диске. Для файла на 300–500 МБ закладывайте в 3–4 раза больше места под базу.
  5. Завершите мастер.

Шаг 2. Загрузите файл

  1. Выделите новую базу и нажмите Конфигуратор.
  2. Откройте меню Конфигурация → Загрузить конфигурацию из файла....
  3. Укажите файл .cf и подтвердите загрузку.
  4. На вопрос об обновлении конфигурации базы данных ответьте «Да». То же самое делает клавиша F7 или пункт Конфигурация → Обновить конфигурацию базы данных.
  5. Примите изменения в окне реорганизации.

Если окно дерева метаданных не появилось, откройте его через Конфигурация → Открыть конфигурацию. Теперь видны все объекты, модули и формы.

Шаг 3. Запустите программу

Закройте Конфигуратор и запустите базу в режиме «1С:Предприятие». Типовые конфигурации при первом запуске показывают помощник начальной настройки. Это нормально: база пустая.

Никогда не загружайте чужой .cf в рабочую базу «чтобы посмотреть». Загрузка заменяет основную конфигурацию целиком. После обновления структуры данные объектов, которых нет в новом файле, будут удалены.

Альтернатива: база из шаблона

Если конфигурация установлена из дистрибутива через setup.exe, она попадает в каталог шаблонов. Тогда при добавлении базы выбирайте «Создание информационной базы из шаблона» и находите нужную конфигурацию и её версию в списке. 1С сама создаст базу и загрузит CF. Внутри каталога шаблона лежит тот же 1Cv8.cf.

Как посмотреть содержимое CF, не загружая его в базу

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

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

Откроется дерево отличий. Двойной щелчок по модулю показывает текст обеих версий рядом. Из окна сравнения можно сформировать отчёт и сохранить его в текстовый файл — удобно для передачи программисту.

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

Расшифровка файла CF: выгрузка в XML и тексты модулей

Сам .cf — сжатый двоичный формат. Блокнот покажет мусор. «Расшифровать» его штатно можно так: загрузить в базу (как выше), а затем выгрузить в обычные файлы.

  1. В Конфигураторе базы с загруженной конфигурацией выберите Конфигурация → Выгрузить конфигурацию в файлы....
  2. Укажите пустой каталог.
  3. Выберите формат выгрузки. Иерархический удобнее читать: каждый объект в своей папке.
  4. Нажмите «Выполнить».

Что вы получите:

  • 📄 .xml — описание каждого объекта метаданных: реквизиты, табличные части, свойства;
  • 🧾 .bsl — тексты модулей на встроенном языке, открываются любым редактором;
  • 🖼️ формы и макеты — в своих подкаталогах.

Такой каталог кладут в Git, сравнивают привычными инструментами или импортируют в 1С:EDT. Обратная операция — Конфигурация → Загрузить конфигурацию из файлов....

В конфигурациях с поставкой без исходных текстов часть модулей закрыта поставщиком. Их код не появится ни при выгрузке в XML, ни в Конфигураторе — это не сбой, а условие поставки. Вскрывать закрытые модули сторонними утилитами — нарушение лицензионного соглашения разработчика.

Есть и сторонние распаковщики контейнера 1С с открытым кодом (например, v8unpack). Они пригодятся, когда нет платформы под рукой, но штатная выгрузка надёжнее: формат совпадает с тем, что понимает сама 1С.

Командная строка: 1cv8.exe, а не 1cv8c.exe

В каталоге платформы (C:\Program Files\1cv8\<версия>\bin\) несколько исполняемых файлов. Для работы с CF нужен один.

ФайлЧто этоОткроет CF?
1cv8.exeТолстый клиент и КонфигураторДа, в режиме DESIGNER
1cv8c.exeТонкий клиент, только режим «Предприятие»Нет
1cv8s.exeЗапуск толстого или тонкого клиента в зависимости от настроек базыНет
1cestart.exeСтартер: окно выбора баз и версии платформыТолько через окно выбора базы

1cv8c.exe с файлами конфигурации не работает вообще: у тонкого клиента нет Конфигуратора. Все пакетные операции идут через 1cv8.exe DESIGNER.

Загрузить CF в файловую базу и сразу обновить структуру:

"C:\Program Files\1cv8\8.3.24.1548\bin\1cv8.exe" DESIGNER /F"D:\Bases\Test" /N"Администратор" /P"" /LoadCfg "D:\Distr\1Cv8.cf" /UpdateDBCfg /Out "D:\Logs\load.log" /DisableStartupDialogs

Для серверной базы вместо /F используйте /S"имя_сервера\имя_базы".

Создать новую базу сразу из CF:

"C:\Program Files\1cv8\8.3.24.1548\bin\1cv8.exe" CREATEINFOBASE File="D:\Bases\FromCF" /UseTemplate "D:\Distr\1Cv8.cf" /Out "D:\Logs\create.log"

Сохранить конфигурацию базы в CF и выгрузить её же в XML:

"C:\Program Files\1cv8\8.3.24.1548\bin\1cv8.exe" DESIGNER /F"D:\Bases\Work" /N"Администратор" /P"" /DumpCfg "D:\Backup\work.cf" /Out "D:\Logs\dump.log"
"C:\Program Files\1cv8\8.3.24.1548\bin\1cv8.exe" DESIGNER /F"D:\Bases\Work" /N"Администратор" /P"" /DumpConfigToFiles "D:\Src\Work" /Out "D:\Logs\xml.log"

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

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

Сравнение и объединение: CF против CFU

Если база уже работает и вы хотите перенести в неё доработки из файла, загрузка не подходит. Нужно объединение.

Объединение с конфигурацией из файла

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

Обновление типовой: когда нужен CF, а когда CFU

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

ФайлКогда подходитОграничение
.cfuОбновление на следующий релизТолько с тех версий, что перечислены в файле
.cfПереход через несколько релизов или из другой веткиСравнение идёт дольше, вопросов в окне объединения больше

Если CFU выдаёт, что файл не подходит для обновления текущей версии, это значит: ваша версия в нём не указана. Берите полный 1Cv8.cf нужного релиза или поднимайтесь цепочкой промежуточных обновлений.

Что вам нужно сделать с файлом .cf?

Откат конфигурации через файлы

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

Варианты отката от мягкого к жёсткому:

  1. Изменения ещё не применены к базе. Выберите Конфигурация → Конфигурация базы данных → Вернуться к конфигурации БД. Основная конфигурация станет такой, какой работает база сейчас. Файлы не нужны.
  2. Изменения применены, данные не пострадали. Загрузите ранее сохранённый CF через Загрузить конфигурацию из файла... и обновите конфигурацию базы данных.
  3. Обновление удалило или испортило данные. CF здесь не поможет: он не содержит данных. Восстанавливайте базу из .dt или из резервной копии СУБД.

Загрузка старого CF поверх новой конфигурации возвращает только структуру. Если в новой версии появились реквизиты и пользователи успели их заполнить, после отката эти значения пропадут. Откат делайте до начала работы пользователей или из полной копии базы.

💡 Хорошая практика перед обновлением: сохранить и CF, и DT. CF весит меньше и восстанавливается быстрее, DT спасает при порче данных.

Если файл CF не открывается

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

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

Можно ли открыть файл CF без установленной платформы 1С?
Штатно — нет. Сторонние распаковщики контейнера покажут структуру и тексты открытых модулей, но запустить программу без платформы нельзя.
Можно ли загрузить CF в базу на компьютере, где нет интернета?
Да. Загрузка, сравнение и выгрузка в XML работают локально. Интернет понадобится позже — для интернет-поддержки и обновлений внутри самой программы.
Чем «Сохранить конфигурацию в файл» отличается от «Выгрузить информационную базу»?
Первое даёт .cf только с конфигурацией. Второе даёт .dt с конфигурацией и всеми данными.
Можно ли открыть CF от одной конфигурации в базе другой, например ЗУП в Бухгалтерии?
Загрузка заменит Бухгалтерию на ЗУП, и данные бухгалтерских объектов будут удалены при обновлении структуры. Для изучения чужой конфигурации всегда используйте отдельную пустую базу.
Почему CF весит 200 МБ, а выгрузка в XML — больше гигабайта?
CF сжат, а XML и BSL — несжатый текст, к тому же разбитый на десятки тысяч файлов. Это нормальное соотношение.