Как правильно обновить нетиповую конфигурацию 1С и получить файл CF из обновления CFU

Программист 1С v8.3 (Обычные формы) Бухгалтерский учет
← На главную

При работе с доработанными (нетиповыми) конфигурациями «1С:Предприятие 8», такими как «Бухгалтерия государственного учреждения 1.0», программисты часто сталкиваются с проблемой поиска полных файлов конфигурации .cf для сравнения. Стандартные пакеты обновлений с портала 1С обычно содержат только файлы .cfu, которые являются «файлами разницы» и не могут быть открыты как самостоятельная конфигурация. В этой статье мы подробно разберем, как получить необходимые файлы для работы, почему нельзя обновлять базу простым сравнением-объединением и как восстановить правильный механизм поддержки.

Разбор понятий: в чем разница между CF и CFU

Прежде всего, проанализируем техническую суть файлов, с которыми мы работаем. Файл .cf (Configuration File) — это полный слепок всей структуры метаданных конфигурации. В нем содержатся все объекты: справочники, документы, общие модули, формы и макеты. Его можно загрузить в пустую базу и получить готовую конфигурацию.

Файл .cfu (Configuration Update) — это специализированный файл, содержащий только изменения между конкретными релизами. Он значительно меньше по размеру, так как не включает в себя те части кода и метаданных, которые остались неизменными. Именно поэтому невозможно «распаковать» или конвертировать .cfu в .cf напрямую, если у вас нет исходной базы предыдущего релиза.

Способ 1: Получение типового CF из имеющейся базы

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

В любой базе, находящейся на поддержке, хранятся как минимум две конфигурации (а на самом деле три):

  1. Основная конфигурация — это то, что вы редактируете в конфигураторе (ваши изменения).
  2. Конфигурация базы данных — то, что работает в режиме «Предприятие» (результат нажатия F7).
  3. Конфигурация поставщика — это неизмененный эталонный код от фирмы «1С», который сохраняется внутри вашей базы при каждом обновлении.

Чтобы выгрузить типовой .cf из нетиповой базы, проделаем следующие шаги:

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

Способ 2: Получение CF из файла обновления CFU

Если у вас на руках только файл обновления .cfu и вам нужен полный .cf нового релиза для предварительного анализа, алгоритм действий будет следующим:

  1. Развернем пустую базу предыдущего релиза (того, для которого предназначено обновление).
  2. Выполним стандартное обновление через Конфигурация — Поддержка — Обновить конфигурацию, указав ваш файл .cfu.
  3. После того как платформа применит изменения к основной конфигурации (даже до нажатия F7), выполним команду Конфигурация — Сохранить конфигурацию в файл.
  4. Теперь у вас есть полный .cf нового релиза.

Критическая ошибка: почему «Сравнить и объединить с конфигурацией из файла» — это не обновление

Разберем ситуацию, описанную во многих обращениях: программист берет нетиповую базу и делает Конфигурация — Сравнить, объединить с конфигурацией из файла, выбирая новый .cf. Это в корне неверный подход для обновления!

При использовании этого метода вы меняете только Основную конфигурацию. При этом Конфигурация поставщика, которая хранится внутри базы, остается старой. В результате возникает ситуация «версионного разрыва»: в настройках поддержки написано, что у вас релиз 1.0.55.5, а по факту в коде уже 1.0.56.7. Это приведет к тому, что следующее обновление через .cfu просто не применится, так как система не найдет нужную «точку опоры».

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

Как восстановить корректную поддержку (лечение базы)

Если вы обнаружили, что версия конфигурации поставщика ниже версии фактической базы (как в Сообщении 17), ситуацию нужно исправлять. Выясним причину: скорее всего, кто-то до вас обновлял базу простым объединением.

Проанализируем шаги по восстановлению:

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

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

Особенности обновления БГУ 1.0

В конфигурации «Бухгалтерия государственного учреждения 1.0» (на обычных формах) крайне важно не только обновить метаданные, но и запустить алгоритмы обработки данных. Обновление через .cf часто «проскакивает» важные этапы. Посмотрим, что нужно сделать обязательно:

После любого обновления конфигурации (нажатия F7) необходимо запустить базу в режиме «Предприятие». В БГУ 1.0 автоматически должна запуститься обработка «Обновление информационной базы». Она обновляет план счетов, классификаторы КБК и другие бюджетные параметры. Если вы просто «накатили» .cf, эти процедуры могут не сработать корректно, что приведет к ошибкам в учете и отчетности.

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

Итог

Для качественного обновления нетиповой БГУ 1.0:

  1. Всегда держите под рукой типовой .cf текущего релиза (выгружайте его из Настройки поддержки).
  2. Никогда не используйте «Сравнение/объединение» как основной метод обновления — только механизм Поддержка — Обновить конфигурацию.
  3. Следите за тем, чтобы версия конфигурации поставщика совпадала с реальной версией вашей базы.
← На главную