Ошибка обновления конфигурации БСП в 1С — решение

Разбираем, почему падает обновление БСП в 1С: конфликты сравнения/объединения, изменённые модули в нетиповой конфигурации и как корректно довести обновление до конца.

Ошибка обновления БСП 1С возникает при загрузке нового релиза Библиотеки стандартных подсистем в конфигурацию, которая ранее уже была доработана под нужды компании. Платформа не может однозначно объединить ваши правки с поставочными изменениями БСП и останавливает процесс — либо предупреждениями в сравнении/объединении, либо ошибкой при обновлении модулей.

Что означает эта ошибка

БСП (Библиотека стандартных подсистем) — это типовой набор общих модулей, обработок, ролей и подписок на события, который входит в большинство прикладных конфигураций: Бухгалтерия предприятия 3.0, ЗУП 3.1, УТ 11, ERP 2.5, УНФ. Когда фирма «1С» выпускает новый релиз конфигурации, в нём почти всегда обновлена и БСП — иногда меняется десяток-другой объектов одновременно.

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

Окно «Сравнение, объединение»
«Объект изменён дважды. Требуется ручное согласование изменений»
или
«Ошибка при обновлении конфигурации базы данных. Не удалось выполнить обновление общего модуля <ИмяМодуляБСП>»

Сообщение появляется в окне «Конфигуратор → Конфигурация → Поддержка → Обновить конфигурацию» либо в окне сравнения/объединения при выборе файла поставки (.cf / .cfu). Иногда сначала проходит «тихо», а падение случается уже на этапе «Обновить конфигурацию базы данных» (F7).

Причины появления

  1. Модули БСП были изменены вручную в вашей конфигурации (включён режим «Изменять» в правилах поддержки).
  2. В новом релизе поставки фирма «1С» переписала тот же фрагмент кода, который правили вы.
  3. Разница между текущим релизом конфигурации и целевым слишком большая — пропущено несколько промежуточных версий.
  4. Сняты с поддержки объекты, которые теперь не получают обновлений автоматически.
  5. Не загружен корректный файл поставки (cf вместо cfu или наоборот, не та редакция).
  6. Не хватает прав или конфигуратор запущен не от администратора базы.

Способ 1: Корректная настройка правил поддержки

  1. Откройте Конфигуратор от имени администратора.
  2. Перейдите: Конфигурация → Поддержка → Настройка поддержки.
  3. Найдите ветку «Библиотека стандартных подсистем» и проверьте, для каких объектов стоит признак «Объект поставщика редактируется с сохранением поддержки».
  4. Для модулей БСП, которые вы НЕ должны были менять, выставьте правило «Не изменять» — обновление пройдёт автоматически.
  5. Для объектов, где правки действительно нужны, оставьте «Изменяется», но будьте готовы к ручному разбору конфликтов.

Способ 2: Ручной разбор конфликтов в сравнении/объединении

  1. Сделайте резервную копию информационной базы (Администрирование → Выгрузить информационную базу).
  2. Запустите обновление: Конфигурация → Поддержка → Обновить конфигурацию → выберите .cfu файл нужного релиза.
  3. В окне «Сравнение, объединение» отсортируйте список по статусу «Изменён в обеих конфигурациях».
  4. По каждому такому объекту откройте детальное сравнение (двойной клик), выберите режим «Объединить с приоритетом основной конфигурации» либо вручную перенесите нужные блоки.
  5. Снимите галочки с объектов, которые брать из поставки не нужно.
  6. Нажмите «Выполнить», затем F7 — обновить конфигурацию базы данных.

Способ 3: Восстановление модуля из типовой

Если вы понимаете, что правки в модуле БСП больше не нужны (например, остались от старой интеграции):

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

Способ 4: Последовательное обновление через промежуточные релизы

  1. Посмотрите номер вашей текущей конфигурации: Главное меню → Справка → О программе.
  2. На releases.1c.ru найдите цепочку релизов от текущего к целевому.
  3. Скачайте все промежуточные .cfu и применяйте по очереди — каждое обновление меньше по объёму и меньше шансов столкнуться с массивным конфликтом БСП.
  4. После каждого шага запускайте обновление базы данных и хотя бы коротко проверяйте, что подсистема работает.

Способ 5: Откат и обновление в копии

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

Профилактика

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

Подробное описание подсистем и регламент обновления — на портале ИТС в разделе «Разработчикам».

FAQ

Можно ли обновить БСП отдельно от основной конфигурации?

Нет. БСП поставляется в составе прикладного решения, отдельных дистрибутивов библиотеки для конечного пользователя не существует. Обновляется только через обновление самой конфигурации (.cfu или .cf).

Что делать, если конфликтов сотни и разобрать руками невозможно?

Восстановите модули БСП из файла поставки (Способ 3), потеряв свои правки, а затем перенесите нужную логику в расширение конфигурации. Это разовая болезненная операция, но дальше обновления пойдут без боли.

Почему после обновления БСП падает регламентное задание?

В новом релизе поменялись имена или сигнатуры процедур, на которые ссылается ваш код или старое расширение. Откройте журнал регистрации, найдите запись об ошибке регламентного задания и поправьте вызов в своём модуле или расширении.

Конфигуратор зависает на этапе сравнения. Что делать?

На больших объединениях это нормально — иногда процесс занимает 20-40 минут. Дайте ему доработать. Если совсем висит больше часа, перезапустите Конфигуратор, увеличьте оперативную память (если доступна, через настройки сеанса) и попробуйте обновляться через промежуточные релизы (Способ 4).

Как понять, какие модули БСП я когда-то правил?

Конфигурация → Поддержка → Настройка поддержки. В колонке «Правило» все объекты со значением «Изменяется» — это то, что выведено из режима «Не изменять». По кнопке «Сравнить с поставкой» можно посмотреть конкретные строки правок.

Нужно ли обновлять платформу перед обновлением БСП?

Желательно. В файле информации к релизу конфигурации указана минимальная версия платформы. Если у вас старее — обновление либо не запустится, либо упадёт уже после применения. Сначала ставите новую платформу, потом обновляете конфигурацию.

Алексей Герзанов aka Gerzoid
Алекс Гезанов

Работаю в сервисном центре по ремонту и обслуживанию бытовой техники. За более чем 10 лет трудовой деятельности, я сталкивался с решением большого количества проблем в работе ОС Windows, периферийных устройств, бытовой техники, игровых консолей Playstation и т. д.

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