Как вернуть базу 1С на поддержку и актуализировать конфигурацию поставщика

Программист 1С v8.3 (Управляемые формы) 1C:Бухгалтерия IT и автоматизация бизнеса
← На главную

В практике обслуживания и сопровождения конфигураций 1С специалисты часто сталкиваются с ситуацией, когда типовая база была частично или полностью снята с поддержки, а последующие обновления накатывались через механизм Сравнить и объединить с конфигурацией из файла. В результате такого обновления основная конфигурация получает актуальный релиз (например, 52.42), однако встроенная конфигурация поставщика остаётся на старом релизе (например, 52.32). Рассмотрим подробно, почему так происходит, чем это грозит при дальнейшей эксплуатации базы и как правильно вернуть конфигурацию на поддержку с актуализацией релиза поставщика.

Выясним причину: как платформа 1С хранит конфигурацию поставщика

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

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

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

Разберем по шагам основной способ выравнивания конфигурации поставщика

Самым безопасным и надежным способом выравнивания версий является процедура объединения с «чистым» типовым файлом .cf нужного релиза (в нашем примере — 52.42) со снятием абсолютно всех флажков изменений. Рассмотрим этот алгоритм пошагово:

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

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

  6. Выполнение объединения: Нажимаем кнопку Выполнить. Платформа обновит только конфигурацию поставщика и установит правила поддержки.
  7. Сохранение изменений: Обновим конфигурацию базы данных (клавиша F7).

Альтернативный метод: Обновление конфигурации поставщика напрямую

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

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

Важные технические нюансы и предотвращение рисков

Проанализируем моменты, которые требуют особого внимания администратора или программиста 1С при выполнении данной процедуры:

1. Сопоставление по уникальным идентификаторам (UUID)
Если конфигурация донора была взята из неофициального источника или создана путем сбора из других веток, внутренние идентификаторы UUID метаданных могут не совпасть с объектами рабочей базы. При выполнении сравнения обязательно убедитесь, что объекты сопоставились по именам и типам, а не создаются дублирующие элементы.

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


1cv8.exe ENTERPRISE /IBConnectionString "..." /C ЗапуститьОбновлениеИнформационнойБазы

Это гарантирует, что все служебные регистры сведений и параметры учета приведутся в соответствие с релизом 52.42.

Современный подход: Перенос доработок в расширения

Разберем лучшую практику обслуживания типовых решений на платформе 1С:Предприятие 8.3. Чтобы предотвратить подобную рассинхронизацию версий в будущем, рекомендуется:

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