1c cfu что за файл

Обновлено: 07.07.2024

Поставка конфигураций 1С может производится с помощью файлов различных форматов и содержания:

  • файл конфигурации ( cf) , содержащий дистрибутив конфигурации;
  • файл информационной базы ( 1cd) , содержащий готовую к работе, но пустую базу данных (или заполненную некоторыми обязательными начальными данными);
  • файл информационной базы, содержащий демонстрационные данные, соответствующие им файлы выгрузки информационной базы ( dt) .

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

В "1С:Предприятии 8" любая конфигурация может стоять на поддержке одной или нескольких других конфигураций, называемых конфигурациями поставщика.

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

Поставка конфигурации


В результате выполнения этой команды создается файл конфигурации (. cf) .

Файл, подготовленный командой "Конфигурация" - "Сохранить конфигурацию в файл", в качестве конфигурации поставщика использовать нельзя.

Для того чтобы получить конфигурацию поставщика в виде файла информационной базы (.1cd) или файла выгрузки информационной базы (.dt), требуется:

  1. подготовленный вышеописанным способом файл . cf загрузить в требуемую информационную базу (возможно, в пустую), выполнив команду "Конфигурация" - "Загрузить конфигурацию из файла";
  2. затем, при необходимости, штатными средствами создать файл . dt.

Настройка поставки 1С

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

Настройка поставки 1С

Следует обратить внимание:

  1. правила поставки задаются только для объектов верхнего уровня: справочники, документы, регистры;
  2. для подчиненных им объектов метаданных (реквизиты, табличные части, формы, макеты) будут использоваться соответствующие правила родительских объектов.

Правила поставки объекта конфигурации:

  1. изменения разрешены;
  2. изменения не рекомендуются;
  3. изменения запрещены;
  4. включение в конфигурацию не рекомендуется.

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

Правила поставки модулей объекта:

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

Отмена использования при поставке полного файла конфигурации (. cf):

  • установка флага "Файл поставки может использоваться для обновления" в настройке поставки конфигурации отменяет возможность использования для обновления конфигурации поставщика полных файлов конфигурации (. cf). Это может быть полезно, когда новая версия конфигурации требует сложной обработки базы данных. По умолчанию флаг "Файл поставки может использоваться для обновления" включен.

Файл поставки может использоваться для обновления


Например, изменение типа реквизита справочника со строки на ссылку на другой справочник требует "двухпроходного обновления":

  1. сначала требуется добавить новый реквизит типа ссылки, заполнить его на основе значения старого реквизита;
  2. только потом можно удалить старый реквизит, а новый переименовать.

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

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

Использование флажка "Файл поставки может использоваться для обновления" позволяет поставщику подстраховаться от ошибок пользователя в процессе обновления.

Общая схема может быть примерно такой:

  1. Подготавливается файл обновления конфигурации с предыдущих версий до промежуточной.
  2. Подготавливается файл обновления конфигурации с промежуточной (только) версии до конечной.
  3. Подготавливается файл конфигурации с отключенным флажком "Файл поставки может использоваться для обновления".

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

ВАЖНО! Следует иметь в виду недостаточную гибкость этого средства. При его отключении пользователь не сможет при необходимости выполнить "обратное обновление" с более поздней версии.

Стандартная структура каталогов файлов поставки и обновления 1С

Механизм поставки конфигураций предлагает определенную схему размещения на диске файлов поставки и поддержки разных версий. В диалоге "Создание файлов поставки и обновления конфигурации" нажав кнопку "Каталог файлов поставки" можно задать корневой каталог для размещения создаваемых файлов. Файлы поставки и обновления будут по умолчанию располагаться в подкаталогах, имеющих имена, соответствующие свойству "Версия" конфигурации.

Рисунок "Создание файлов поставки и обновления конфигурации"

структура каталогов файлов поставки и обновления 1С

Использование этой схемы позволит упростить подготовку обновлений для новых версий конфигурации.

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

Создание файлов поставки и обновления конфигурации

Файлы поставки и обновления могут создаваться из диалога "Создание файлов поставки и обновления":

  1. одновременно (только один файл обновления);
  2. раздельно.

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

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

ВАЖНО! Файлы обновления не являются кумулятивными, то есть создание обновления с версии "4" до версии "6" не позволит с помощью этого файла произвести обновление с версии "5", если только она не была указана при создании.

Для выбора файлов предыдущих версий можно пользоваться:

  • кнопкой "Добавить" и прямым выбором файла;
  • кнопкой "Добавить из предыдущих версий", которая сама найдет и предложит для выбора файлы, если они были размещены на диске в соответствии с описанной выше стандартной структурой каталогов.

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

Добавить комментарий Отменить ответ

Для отправки комментария вам необходимо авторизоваться.

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.


ИНСТРУКЦИЯ 1С 8 → перейти в меню [СТАТЬИ И ИНСТРУКЦИИ]


*.cf - файл содержит только конфигурацию(код и структура) без пользовательских данных. Создаётся из конфигуратора 1С 8.х: «Конфигурация -> Сохранить конфигурацию в файл» или «Конфигурация -> Поставка конфигурации -> Создать файл поставки и обновление конфигурации -> признак «Создать файл поставки»».

*.cfu - файл содержит только обновление конфигурации. Например файл 1cv8.cfu. Создать конфигурацию из этого файла невозможно, так как он содержит в себе только отличия новой конфигурации от предыдущей. Создаётся из конфигуратора 1С 8.х: «Конфигурация -> Поставка конфигурации -> Создать файл поставки и обновление конфигурации -> признак «Создать файл обновления конфигурации»».

*.cfe - файл-расширение, предназначенный для доработки конфигурации без её изменения. При использовании расширений 1С (*.cfe) - доработанная конфигурация может полноценно обновляться и с поддержки не снимается.

*.dt - файл содержит конфигурацию вместе с пользовательской базой данных. Это специализированный формат архива 1С 8. Создаётся из конфигуратора 1С 8.х: «Администрирование -> Выгрузить информационную базу».

*.epf (*.erf) – файл внешней обработки (отчёта). Любую обработку (отчёт) из конфигурации можно сохранить внешней. Создаётся из конфигуратора 1С 8.х: «Конфигурация -> Открыть конфигурацию -> становимся на нужную обработку (отчёт) -> выделяем правой кнопкой мыши -> Сохранить как внешнюю обработку, отчёт…».

*.1cd – файл полноценной базы данных. Представление имени по умолчанию: 1Cv8.1CD. Включает в себя конфигурацию, базу данных, пользовательские настройки. Открывается платформой 1С 8.x. Создаётся для разработки новой конфигурации автоматически по кнопке «Добавить» при выборе пункта «Создание новой информационной базы».

*.log, *.lgf, *.lgp, *.elf - лог файлы, которые собирают информацию (регистрируют данные) в 1С 8.0 8.1, 8.2, 8.3. Например, файл 1Cv8.lgf (в каталоге 1Cv8Log ) содержит информацию журнала регистрации.

*. cdn - файл с таким расширением ( 1Cv8.cdn) служит для ручной или автоматической блокировки базы данных 1С Предприятия восьмой версии .

*.mxl - файлы печатных форм используются, в том числе и в 1С. Являются как печатными формами документов, справочников, отчётов, так и различными накопителями данных для различных классификаторов. Открывается через Конфигуратор или в режиме 1С:Предприятии через «файл -> открыть». Создаётся точно так же: в режиме Конфигуратор или в 1С:Предприятии через «файл -> новый». Так же файлы с такими расширениями могут служить правилами переноса, например, из 1С 7.7 в 8.2 ( acc77_82.xml и вспомогательная обработка exp77_82.ert) - находятся они обычно в папке ExtForms.

*.efd - это архивный файл 1С, используется для установки конфигурации. Содержит или конфигурацию 1с или обновление к ней. Запускается с помощью вспомогательного исполняющего файла setup.exe (должен находиться в одной папке).

*.mft – вспомогательный файл для создания конфигурации из шаблона. Содержит информацию о конфигурации, описание, пути, название. Используется непосредственно самой платформой при создании информационной базы 1С из шаблона.

*.grs - файлы графических схем в специализированном формате 1С. Открывается через Конфигуратор или в режиме 1С:Предприятии через «файл -> открыть». Создаётся точно так же: в режиме Конфигуратор или в 1С:Предприятии через «файл -> новый».

*.geo - файлы географических схем в специализированном формате 1С. Открывается через Конфигуратор или в режиме 1С:Предприятии через «файл -> открыть». Создаётся точно так же: в режиме Конфигуратор или в 1С:Предприятии через «файл -> новый».

*.st - файлы шаблонов текстов. Используются в основном 1С разработчиками.

*.pff - файл с сохраненными замерами производительности. Используются системными администраторами и специалистами 1С.

*.pfl - файл содержащий различные параметры для старта и работы с 1С:

. 1Cv8.pfl - параметры для компьютера/информационной базы/пользователя (в т.ч. пароли пользователей, настройки текстового редактора, настройки глобального поиска по текстам конфигурации, список переменных для быстрого просмотра в отладчике ). Настройки модулей в конфигураторе хранятся в файле 1Cv8.pfl . Этот файл обычно находится в каталоге настроек пользователя C:\Users\<ИмяПользователя>\AppData\Roaming\1C\1cv8.

1%), то тогда нужно обновиться сначала на какой-то промежуточный.
Я всегда держу пустые базы с типовыми конфигурациями, которые обновляю чтобы получить полный CF вместо CFU.
В таблице релизов на сайте 1С не РЕКОМЕНДУЕМЫЙ порядок обновления, а просто для каждого CFU написано, с каких релизов этот CFU может обновить, для обновления с других релизов в этом CFU просто нет данных для обновления и ВСЁ!
При обновлении сразу на нужный CF вы в перспективе сэкономите кучу времени, а в 1% случаев (кажется, за 10 лет 1 раз такое было) просто откатитесь и сначала обновитесь на какой-то промежуточный. При чём полный перенос доработок у вас уже будет сделан (вам же не требуются доработки форм в промежуточном релизе, на котором пользователи работать не будут).

Если не знаешь, то лучше делай по инструкции.
А судя по твоему вопросу - опыта у тебя не так много. Можешь сломать базу. Скорость обновления одинаковая. Но если ты будешь "перескакивать" на такие релизы, которые не допускает *.cfu перескочить, то получишь проблем.
Из-за реструктуризации могут потеряться данные.
Короче, надёжнее обновлять рабочие базы только*.cfu'шками.
Ещё после каждой итерации обновления не забывай запускать базу в режиме предприятия и прогонять обработки обновления конфигурации.

Не обязательно каждое подряд обновление накатывать можно пропускать некоторые вот таблица тебе поможет разобраться

ПС перед обновлением делай бэкапы.

На самом деле, разница в том, что обновление - это не только "прикрутить" новую конфигурацию. Часто нужно обрабатывать и данные. .cfu это учитывают, а .cf - это "голая" конфигурация, без информации о том, как обновить данные.

Чувствую, нужен пример?
Был у нас документ Док. У него реквизит Рекв определённого типа.
В какой-то момент разработчик решил, что тип Рекв должен быть другим. Что он делает?
1) переименовывает Рекв в удалить_Рекв.
2) создаёт новый реквизит Рекв с нужным типом
3) (. ) пишет обработку, которая при обновлении "перекачает" данные из удалить_Рекв в Рекв.

Всё! Система опознаёт объекты не по имени, а по идентификатору, так что, накатив .cfu ты получишь именно такую последовательность:
1) переименовался старый реквизит
2) создался новый реквизит
3) данные переачались в новый реквизит
Через какое-то время старый удалить_Рекв убирают из конфигурации, и у тебя при очередном обновлении происходит
4) удалить_Рекв удаляется навсегда.

А теперь предположим, что ты накатил сразу второй .cf, что будет?
1) УДАЛЯЕТСЯ старый Рекв.
2) Создаётся новый Рекв.
3). а нет третьего! Данные не обрабатываются!
То есть, ты теряешь все данные в Рекв.

Резюме: лучше обновляться с .cfu. И после КАЖДОГО обновления запускать программу и давать ей обработать данные. Знаю, это муторно (особенно при обновлении этак через 10 релизов), но зато гарантирует отсутствие ошибок в дальнейшем.

MdInternals понимает формат cf, cfu, epf, erf, распаковывает содержимое в удобочитаемые Xml и текстовые файлы и загружает обратно. Позволяет программно обращаться к внутренним файлам и свойствам объектов.

Проект состоит из частей:

  • MdInternals программно обращается к объектам и свойствам конфигурации
  • CfProject отвечает за сериализацию и десериализацию объектов MdInternals
  • MdInternals.Cil декомпилирует байт-код (OpCode) 1С
  • MdInternals.Serialization работает с внутренним полу-JSON форматом 1С вида " < 19 < "", 2 >>"

Выгрузка файлов cf, cfu, epf, erf на диск

Распознанные файлы записываются в дерево каталогов по видам объектов. Нераспознанные помещаются в каталог Unresolved:



Распознанные файлы выгружаются в XML-формате. Формат XML позволяет контролировать логическую целостность файлов и обрабатывать файлы сторонними программами. Известные свойства перемещаются в соответствующие разделы (атрибуты или тэги) XML-структуры:


Чтение из MSSQL-таблицы

Обращение к внутренним файлам

Создание файла из выгруженного xml-формата

Описание Cf-Формата

Cf-файл состоит из заголовка образа (ImageHeader) и следующими за ним страницами (ImagePage1-ImagePageN). Заголовок образа состоит из 4х байт сигнатуры, которая равна 0xFF 0xFF 0xFF 0x7F, 4х байт размера страницы и 8 зарезервированных байт. После заголовка файла идут по порядку страницы с данными. Каждая предыдущая страница ссылается на последующую.


Каждая страница (ImagePage) состоит из заголовка страницы (ImagePageHeader), группы указателей на записи ImageRowPointers и области ImageRows.


Заголовок страницы ImagePageHeader содержит в себе: зарезервированные 2 байта 0x0D 0x0A, 27 байт текстовой информации и еще зарезервированные 2 байта 0x0D 0x0A. Текстовая информация содержит 3 шестнадцатеричных числа: общий размер данных всех страниц (FullSize), размер текущей страницы (PageSize) и адрес следующей страницы в файле (NextPageAddress). FullSize проставляется только для первой страницы цепочки страниц. Для остальных страниц цепочки это значение 0. Для последней страницы цепочки NextPageAddress принимается равным 0xFF 0xFF 0xFF 0x7F.

Блок указателей ImageRowPointers занимает размер, указанный в значении PageSize страницы. Каждый указатель состоит из 4х байт адреса заголовка HeaderAddress и 4х байт адреса тела BodyAddress. В конце каждого указателя помещается сигнатура 0xFF 0xFF 0xFF 0x7F. Адреса указывают на расположения внутри текущей страницы на область ImageRows.

Заголовок ImageRowHeader начинается с блока заголовка страницы ImagePageHeader, который сообщает, сколько байт отведено под заголовок. Далее идут 20 зарезервированных байт, UTF-16 строка идентификатора данных (Id) и 4 зарезервированных байт.

Тело ImageRowBody начинается с блока заголовка страницы ImagePageHeader, который сообщает, сколько байт отведено под тело данных. Если тело данных начинается на 0xEF 0xBB 0xBF (сигнатура UTF8), то тело содержит UTF-8 строку. Иначе тело данных содержит упакованные данные. Если распакованные данные начинаются на 0xFF 0xFF 0xFF 0x7F, то содержимое – последовательность объектов, и они записаны в CF-формате. Иначе содержимое – это строка сериализации.

Читайте также: