К статье
Практический материал

Разработка и Конфигурация · 12 мин

Как обновить БСП в 1С: практическая инструкция

Как правильно обновить Библиотеку стандартных подсистем (БСП) в 1С: подготовка, резервная копия, обновление через конфигуратор, проверка результата и типичные ошибки.

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

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

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

Проверьте, нужно ли вам обновлять БСП вручную

Первый шаг — определить, какая у вас ситуация. Откройте конфигуратор и посмотрите версию БСП: она обычно видна в общем модуле СтандартныеПодсистемыСервер (функция, возвращающая версию библиотеки) или в описании конфигурации. Сравните её с актуальной версией библиотеки, доступной на портале 1С, если у вас есть действующая подписка ИТС или договор сопровождения.

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

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

Подготовка: резервная копия и требования к платформе

Обновление БСП — это изменение тысяч объектов метаданных, и откат без копии невозможен. Перед началом сделайте полную выгрузку информационной базы: конфигуратор → «Администрирование → Выгрузить информационную базу» в файл .dt. Для клиент-серверных баз дополнительно согласуйте с администратором СУБД создание резервной копии средствами самой СУБД — выгрузка .dt не всегда достаточна для больших баз.

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

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

Получение и анализ новой версии БСП

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

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

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

Выполнение обновления через сравнение и объединение

Основной инструмент — режим «Конфигурация → Поддержка → Настройка поддержки» и далее «Загрузить конфигурацию из файла», либо «Конфигурация → Сравнить, объединить с конфигурацией из файла». Для конфигурации на поддержке с возможностью изменения используется второй вариант: он позволяет выборочно переносить объекты и сохранять ваши доработки.

Порядок действий в конфигураторе выглядит так:

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

При объединении ключевой момент — правильная расстановка приоритетов. Объекты, которые относятся к самой БСП и не дорабатывались вами, должны полностью замещаться новой версией. Ваши собственные подсистемы и доработанные объекты должны сохраняться. Ошибка на этом этапе — самая частая причина потери доработок.

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

Адаптация переопределяемых модулей после объединения

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

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

Также проверьте подписки на события, обработчики в модуле управляемого приложения и общие команды, которые ссылаются на объекты библиотеки. Если в новой версии подсистема переименована или разделена на несколько, ссылки придётся перенастроить.

Удобно вести список всех собственных доработок объектов БСП в отдельном документе: объект, что изменено, зачем. При каждом обновлении библиотеки этот список превращается в чек-лист — вы сразу видите, какие места проверить после объединения, и не ищете доработки по памяти.
ПЗ
Практическое замечание

Проверка результата и откат при проблемах

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

Контрольные точки

Как проверить результат

Версия БСП в информационной панели или модуле СтандартныеПодсистемыСервер
Норма

Отображается новая версия библиотеки

Тревожный признак

Версия старая — обработчики обновления не выполнились

Журнал регистрации после первого запуска
Норма

Есть записи об успешном обновлении данных, нет ошибок обработчиков

Тревожный признак

Ошибки в обработчиках обновления, отложенные обработчики зависли

Вход под обычным пользователем без административных прав
Норма

Рабочий стол открывается, права работают как раньше

Тревожный признак

Ошибки доступа, пустой интерфейс, сообщения о нехватке ролей

Проверка конфигурации в конфигураторе
Норма

Нет ошибок логической целостности

Тревожный признак

Ссылки на несуществующие объекты или процедуры

Если обновление прошло с критическими ошибками и быстро исправить их нельзя, откат выполняется только через восстановление базы из выгрузки .dt, сделанной до начала работ. Поэтому копия должна быть проверена на восстанавливаемость заранее — разверните её один раз в тестовом каталоге и убедитесь, что база открывается.

Типичные ошибки при обновлении БСП

Типичные ошибки
01
Обновление без резервной копии — при ошибке объединения базу приходится восстанавливать из старых архивов с потерей данных
02
Перескок через несколько версий БСП — обработчики обновления данных не рассчитаны на такой переход, часть данных остаётся в старом формате
03
Приоритет «новой конфигурации» для доработанных объектов — собственные изменения затираются при объединении
04
Игнорирование требований к версии платформы — конфигурация не запускается или работает с ошибками после обновления
05
Прерывание обработчиков обновления данных при первом запуске — база остаётся в промежуточном состоянии
06
Обновление сразу на рабочей базе без прогона на копии — непредвиденные ошибки обнаруживаются, когда пользователи уже не могут работать

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

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

Когда лучше привлечь специалиста

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

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

Итог

Что важно запомнить

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

Частые вопросы

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

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

Как узнать текущую версию БСП в своей базе?

В режиме предприятия версия обычно отображается в разделе «Администрирование → Поддержка и обслуживание» или в окне «О программе». В конфигураторе её можно посмотреть в общем модуле СтандартныеПодсистемыСервер — там есть функция, возвращающая номер версии библиотеки.

Что делать, если обработчики обновления данных зависли?

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

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

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

Можно ли перескочить через несколько версий БСП сразу?

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

Как сохранить свои доработки при обновлении библиотеки?

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