Разработка и Конфигурация · 11 мин
Что такое упаковка 1С и как собрать комплект поставки конфигурации
Упаковка 1С — что это такое, как создать комплект поставки конфигурации, файл обновления и дистрибутив. Пошаговая инструкция, ошибки и проверка результата.
Упаковка 1С — это процесс подготовки конфигурации к передаче и установке: из рабочей информационной базы или хранилища собирается комплект поставки, который содержит файл конфигурации, файл обновления, шаблоны для создания новых баз и сопроводительные файлы. Термин используют разработчики и внедренцы, когда нужно передать доработку заказчику, выпустить обновление типового решения или подготовить тиражный продукт.
Без правильной упаковки передача конфигурации превращается в ручную работу с риском ошибок: получатель может установить не ту версию, потерять данные при обновлении или получить базу без необходимых начальных данных. Комплект поставки решает эти задачи — он фиксирует версию, содержит сценарии обновления с предыдущих релизов и позволяет развернуть решение штатными средствами платформы.
В статье разберём, из чего состоит комплект поставки, как его собрать в конфигураторе, чем отличаются файлы CF, CFU и DT, как проверить результат и каких ошибок стоит избегать.
Что входит в комплект поставки 1С
Комплект поставки — это набор файлов, который платформа 1С:Предприятие использует для установки или обновления конфигурации. Минимальный состав включает файл конфигурации с расширением .cf, который содержит полное описание метаданных: справочники, документы, отчёты, модули, роли и интерфейс.
Второй ключевой элемент — файл обновления конфигурации с расширением .cfu. Он предназначен для обновления уже работающих баз и содержит не всю конфигурацию, а только механизм перехода с указанных предыдущих версий. Платформа при установке CFU проверяет, подходит ли текущая версия базы под список поддерживаемых, и только потом применяет изменения.
Дополнительно в комплект могут входить файл манифеста поставки (1cv8.mft), демонстрационная информационная база в формате DT, файлы описания изменений и документация. Манифест описывает состав комплекта и используется при создании шаблона установки.
Чем отличаются файлы CF, CFU и DT
В практике передачи конфигураций используются три основных формата, и их часто путают. Понимание различий важно, потому что выбор неправильного файла приводит либо к невозможности обновления, либо к потере данных.
| Формат | Что содержит | Когда использовать |
|---|---|---|
| CF | Полная конфигурация без данных | Загрузка в пустую базу, объединение, сравнение, создание нового решения |
| CFU | Обновление с конкретных версий | Обновление рабочих баз через поддержку с контролем версий |
| DT | Конфигурация и все данные базы | Перенос базы целиком, создание копии, демонстрационный стенд |
Ключевое отличие CFU от CF — контроль версий. Файл обновления «знает», с каких релизов можно перейти на новый, и откажется устанавливаться на неподдерживаемую версию. Это защищает от ситуации, когда обновление применяется к слишком старой базе и обработчики перехода не отрабатывают.
Файл DT, напротив, никаких версий не контролирует: при загрузке он полностью заменяет содержимое базы, включая данные. Передавать заказчику рабочую базу в виде DT вместо комплекта поставки — грубая ошибка, которая уничтожит его данные.
Как собрать комплект поставки в конфигураторе
Сборка выполняется в конфигураторе через меню «Конфигурация → Комплект поставки». Перед сборкой убедитесь, что конфигурация находится в консистентном состоянии: выполните проверку конфигурации, обновите конфигурацию базы данных и убедитесь, что номер версии в свойствах конфигурации указан корректно.
Сначала создаётся файл поставки. В диалоге «Поставка конфигурации» укажите версию, выберите предыдущие версии, с которых возможно обновление, и отметьте, какие файлы формировать: полную поставку (CF), обновление (CFU) или оба варианта. Платформа сохранит настройки поставки внутри конфигурации, и при следующих сборках список поддерживаемых версий нужно будет актуализировать.
Затем через пункт «Создать комплект поставки» формируется итоговый набор файлов в указанном каталоге. Если планируется установка через шаблон, дополнительно создаётся файл манифеста и структура каталогов шаблона, которую пользователь сможет добавить в список шаблонов при создании новой базы.
- 1Обновите конфигурацию базы данных и выполните полную проверку конфигурации
- 2Укажите корректный номер версии в свойствах конфигурации
- 3Откройте «Конфигурация → Комплект поставки → Поставка конфигурации» и задайте список версий для обновления
- 4Сформируйте файлы поставки (CF и CFU)
- 5Создайте комплект поставки в отдельный каталог и проверьте его содержимое
- 6Протестируйте установку на копии базы предыдущей версии
Настройка файла поставки и версий обновления
Самая ответственная часть упаковки — правильное указание версий, с которых разрешено обновление. Если список слишком узкий, пользователи со старых релизов не смогут обновиться напрямую и будут вынуждены ставить промежуточные версии. Если включить версию, для которой не написаны обработчики перехода, обновление формально пройдёт, но данные могут остаться в некорректном состоянии.
Обработчики обновления данных размещаются в общих модулях с подсистемой обновления (в типовых решениях это подсистема «Обновление информационной базы»). Каждый обработчик привязан к диапазону версий и выполняет перенос данных при изменении структуры метаданных: например, при переносе реквизита в табличную часть или при разделении справочника на два.
Практическое правило: в файл обновления включайте только те версии, для которых реально написаны и протестированы обработчики. Для остальных случаев документируйте цепочку последовательных обновлений через промежуточные релизы.
Проверка комплекта перед передачей заказчику
Собранный комплект обязательно тестируется до передачи. Минимальная проверка — установка обновления на копию рабочей базы предыдущей версии. База должна обновиться без ошибок, обработчики перехода — отработать, а ключевые данные (остатки, документы, справочники) — остаться корректными.
Вторая проверка — создание новой базы из шаблона или загрузка CF в пустую базу. Убедитесь, что решение разворачивается с нуля, первоначальное заполнение отрабатывает, а типовые операции выполняются без обращений к несуществующим объектам.
Полезно также проверить комплект на чистой машине без доступа к исходной базе разработчика: так выявляются скрытые зависимости — внешние компоненты, картинки из файловой системы, печатные формы, которые забыли включить в поставку.
Как проверить результат
Обновление применяется, обработчики отрабатывают, данные на месте
Ошибки при обновлении, потерянные или пустые данные
База создаётся, первоначальное заполнение выполняется
Ошибки при создании, отсутствуют обязательные объекты
Есть CF, CFU, манифест, документация
Отсутствует CFU или манифест, старая версия файлов
Все функции работают без внешних зависимостей
Ошибки обращения к файлам или компонентам разработчика
Типичные ошибки при упаковке конфигурации
Наиболее частая ошибка — передача заказчику файла CF или DT вместо комплекта поставки с CFU. При загрузке CF через «Загрузить конфигурацию из файла» платформа не запускает обработчики обновления данных, и при изменении структуры метаданных информация теряется или искажается. Обновление рабочих баз должно идти через механизм поддержки и файл CFU.
Вторая группа ошибок связана с версиями: забытый номер версии, неактуальный список поддерживаемых релизов, отсутствие обработчиков перехода для заявленных версий. Третья группа — неполный комплект: отсутствие описания изменений, документации или внешних файлов, без которых решение не работает.
Альтернативы классической упаковке
Не всегда нужен полный комплект поставки. Если доработка небольшая и не меняет структуру данных, её можно передать в виде расширения конфигурации (файл .cfe). Расширение подключается поверх основной конфигурации без снятия с поддержки и обновляется независимо — это предпочтительный способ для большинства доработок типовых решений.
Для внутренней разработки в одной компании комплект поставки часто заменяют прямой загрузкой CF через хранилище конфигурации или систему контроля версий с последующей сборкой. Для тиражных продуктов, напротив, комплект поставки обязателен — без него невозможна корректная работа механизма поддержки и автоматического обновления у пользователей.
Сравнение вариантов передачи доработок
Для тиражных решений и обновления рабочих баз с контролем версий; требует аккуратной настройки поставки
Для небольших доработок типовых конфигураций без снятия с поддержки; не подходит для глубоких изменений структуры
Только для переноса базы целиком или демонстрационных стендов; уничтожает данные при загрузке в рабочую базу
Частые вопросы
Чем упаковка отличается от выгрузки базы в DT?
Выгрузка DT сохраняет конфигурацию вместе со всеми данными конкретной базы и используется для её переноса или резервного копирования. Упаковка создаёт комплект поставки — файлы CF и CFU без пользовательских данных, предназначенные для установки решения и контролируемого обновления любых баз, где оно развёрнуто.
Можно ли обновить базу файлом CF вместо CFU?
Технически CF можно загрузить через «Загрузить конфигурацию из файла», но при этом не выполнятся обработчики обновления данных и не сработает контроль версий. Для рабочих баз так делать нельзя: при изменении структуры метаданных данные будут потеряны или искажены. CF уместен только для пустой базы или для сравнения и объединения конфигураций.
Как добавить в комплект обновление сразу с нескольких старых версий?
В настройках поставки конфигурации в конфигураторе укажите список всех предыдущих версий, с которых разрешён переход. Для каждой из них должны существовать обработчики обновления данных. Перед выпуском протестируйте обновление с каждой заявленной версии на копии соответствующей базы.
Что делать, если пользователь пропустил несколько релизов?
Если его версия не входит в список поддерживаемых текущим CFU, обновление нужно выполнять по цепочке: последовательно установить промежуточные релизы до текущего. Поэтому важно хранить архив всех выпущенных комплектов поставки и публиковать инструкцию по переходу со старых версий.
Нужен ли комплект поставки для доработки в виде расширения?
Нет. Расширение передаётся одним файлом .cfe и подключается через «Администрирование → Печатные формы, отчеты и обработки → Расширения» или через конфигуратор. Комплект поставки нужен только для поставки основной конфигурации, где важны контроль версий и обработчики обновления данных.
Что важно запомнить
Упаковка 1С — это сборка комплекта поставки: CF для полной конфигурации, CFU для контролируемого обновления рабочих баз и манифеста для шаблона установки. Обновляйте рабочие базы только через CFU, проверяйте комплект на копии базы и никогда не используйте DT для установки обновлений.