Разработка и Конфигурация · 11 мин
Как определить версию БСП в 1С
Как узнать версию БСП (Библиотеки стандартных подсистем) в конфигурации 1С: через конфигуратор, код, отчёт и поддержку. Пошаговые инструкции и частые ошибки.
Библиотека стандартных подсистем (БСП) — основа большинства типовых конфигураций «1С:Предприятие»: Управление торговлей, ERP, Бухгалтерия, Зарплата и управление персоналом построены на её модулях. Знать точную версию БСП нужно при обновлении конфигурации, установке расширений, подключении внешних обработок и при обращении в техподдержку — многие решения совместимы только с определённым диапазоном версий библиотеки.
Номер версии БСП не совпадает с номером версии конфигурации. Например, в конфигурации «Бухгалтерия предприятия 3.0» может быть встроена БСП версии 3.1.x, и обновление прикладного решения не всегда означает обновление библиотеки. Поэтому проверять нужно именно версию библиотеки, а не ориентироваться на номер релиза конфигурации.
Есть несколько способов определить версию БСП: через конфигуратор, программным вызовом из кода, через стандартный отчёт в пользовательском режиме и через настройки поддержки. Ниже разобран каждый из них с точными шагами и ограничениями.
Что такое БСП и зачем знать её версию
Версия БСП имеет четырёхсоставный номер вида 3.1.10.456, где первые две цифры — редакция библиотеки, третья — подверсия, четвёртая — номер сборки. Совместимость расширений, внешних компонентов и обработок часто проверяется именно по первым двум-трём цифрам, поэтому важно знать номер полностью.
Типичные ситуации, когда требуется версия БСП:
- установка расширения, у которого заявлена совместимость с конкретной редакцией библиотеки;
- ручное обновление конфигурации, когда нужно понять, какие промежуточные обработчики обновления отработают;
- диагностика ошибок в стандартных подсистемах — по номеру версии можно найти известные проблемы и исправления;
- разработка собственных модулей с использованием программного интерфейса БСП — состав экспортных процедур меняется от версии к версии.
Способ 1. Программный вызов через консоль кода
Самый надёжный метод — обратиться к программному интерфейсу библиотеки. В любой конфигурации на БСП есть общий модуль СтандартныеПодсистемыСервер с функцией ВерсияБиблиотеки(), которая возвращает строку с полным номером версии.
Откройте внешнюю обработку «Консоль кода» (или любую консоль, позволяющую выполнить произвольный код на сервере) и выполните:
Сообщить(СтандартныеПодсистемыСервер.ВерсияБиблиотеки());Результат — строка вида «3.1.10.256». Это актуальная версия библиотеки, зафиксированная в информационной базе после последнего обновления. Метод работает и в толстом, и в тонком клиенте, главное — чтобы код выполнялся в серверном контексте, так как модуль серверный.
Если консоли кода под рукой нет, тот же вызов можно выполнить через внешнюю обработку, созданную в конфигураторе, либо через обработку «Выполнение произвольного кода» из состава инструментов разработчика. Не пытайтесь вызвать функцию в клиентском контексте формы без директивы «&НаСервере» — получите ошибку о недоступности модуля.
Способ 2. Поиск версии в конфигураторе
Если база не запускается в пользовательском режиме или нет прав на выполнение кода, версию можно посмотреть напрямую в дереве конфигурации. Этот способ показывает версию, заложенную поставщиком в метаданные, — она может отличаться от фактической версии данных, если обновление прошло с ошибками.
- 1Откройте конфигуратор и командой «Конфигурация — Открыть конфигурацию» разверните дерево метаданных.
- 2Найдите общий модуль «СтандартныеПодсистемыСервер» и откройте его текст.
- 3Найдите функцию «ВерсияБиблиотеки» — в ней оператор Возврат содержит строку с номером версии.
- 4Дополнительно проверьте общий модуль «ОбновлениеИнформационнойБазыБСП»: в нём процедура «ПриДобавленииПодсистемы» задаёт описание версии библиотеки.
- 5Сравните номер в коде с номером, который вернёт программный вызов из рабочей базы, — они должны совпадать.
Альтернативный путь — окно «О конфигурации» (меню «Конфигурация — Сохранить конфигурацию в файл» недалеко, но нужно именно «Конфигурация — Поддержка — Настройка поддержки» либо свойства корня конфигурации). В свойствах корневого узла конфигурации поле «Версия» показывает версию прикладного решения, а не БСП — не путайте эти значения.
Для типовых конфигураций фирма «1С» также встраивает подсистему с описанием библиотеки: в модуле обновления информационной базы БСП при добавлении подсистемы указывается имя «СтандартныеПодсистемы» и её версия. Именно это значение используется механизмом отложенного обновления.
Способ 3. Через пользовательский режим и стандартные отчёты
Без конфигуратора версию можно определить в режиме «1С:Предприятие». В типовых конфигурациях откройте раздел «Администрирование» и найдите пункт «Поддержка и сервис» или «Результаты обновления и дополнительная обработка данных» (название зависит от конфигурации). Там отображается прогресс обновления с указанием версий подсистем, включая «Стандартные подсистемы».
Ещё один вариант — команда «О программе» (пиктограмма со знаком вопроса или пункт главного меню). В открывшемся окне выводится версия конфигурации и платформы; в некоторых типовых решениях там же указана версия библиотеки. Если версии БСП в этом окне нет, ориентируйтесь на отчёт о результатах обновления.
Способ 4. Проверка версии в данных информационной базы
Фактическую версию, до которой реально обновлены данные, БСП хранит в константах и регистрах сведений. Сведения о версиях подсистем записываются в регистр сведений «Версии подсистем» (в новых редакциях — «Версии подсистем областей данных» для сервиса). Открыть его можно через «Все функции — Регистры сведений» либо универсальным отчётом.
Найдите строку с именем подсистемы «СтандартныеПодсистемы» — в поле «Версия» будет номер, до которого выполнены обработчики обновления. Если этот номер ниже версии из метаданных конфигуратора, значит обновление данных не завершено: отложенные обработчики ещё выполняются или завершились с ошибкой.
Как проверить результат
Номера полностью совпадают
Версия из кода ниже — обновление данных не завершено
Запись есть, версия актуальна
Записи нет или версия старая — обновление прошло с ошибками
Все обработчики в статусе «Выполнено»
Есть ошибки или зависшие обработчики
Как сопоставить версию БСП и типовую конфигурацию
Фирма «1С» публикует соответствие релизов прикладных решений и версий БСП в документации к конфигурации и на портале для разработчиков. Точные таблицы соответствия меняются с каждым релизом, поэтому сверяйте их по официальным источникам, а не по старым форумным спискам.
Ориентировочная логика такова: крупные отраслевые решения (ERP, ЗУП, Бухгалтерия) переходят на новую редакцию БСП не сразу после её выпуска, а через один-два релиза. Поэтому нельзя предполагать версию библиотеки «по свежести» конфигурации — только прямой проверкой одним из способов выше.
Сравнение способов проверки
Самый быстрый и точный; требует права на выполнение кода и консоль кода.
Работает даже при неработающей базе; показывает версию в метаданных, а не факт обновления данных.
Доступен без конфигуратора; не во всех конфигурациях показывает версию БСП явно.
Показывает фактическое состояние обновления данных; требует доступа к «Все функции».
Частые ошибки при определении версии БСП
Отдельная ошибка — проверять версию в копии базы и переносить вывод на рабочую. Если копия снята до обновления, а рабочая база уже обновлена (или наоборот), версии разойдутся. Всегда проверяйте именно ту базу, для которой принимаете решение о совместимости.
Если обнаружили расхождение версий между метаданными и данными, не запускайте повторное обновление «вслепую». Сначала откройте отчёт о прогрессе отложенного обновления, выясните, какие обработчики завершились с ошибкой, и устраните причину — чаще всего это нехватка прав, блокировки или ошибки в пользовательских данных.
Как выбрать действие
FAQ
Где посмотреть версию БСП без доступа к конфигуратору?
Выполните вызов СтандартныеПодсистемыСервер.ВерсияБиблиотеки() через консоль кода в режиме «1С:Предприятие» или откройте регистр сведений «Версии подсистем» через «Все функции» и найдите строку «СтандартныеПодсистемы». В ряде типовых конфигураций версия также видна в отчёте о результатах обновления в разделе «Администрирование».
Совпадает ли версия БСП с версией конфигурации?
Нет, это независимые номера. Прикладное решение версии, например, 3.0 может включать библиотеку редакции 3.1. Определять версию БСП нужно отдельной проверкой, а не выводом из номера релиза конфигурации.
Почему версия из метаданных отличается от версии в базе?
Конфигуратор показывает версию, заложенную поставщиком в код, а регистр «Версии подсистем» — версию, до которой фактически выполнены обработчики обновления данных. Расхождение означает, что обновление данных не завершено: проверьте отчёт о прогрессе отложенного обновления.
Как узнать версию БСП в незапускающейся базе?
Откройте конфигуратор, разверните дерево конфигурации и найдите функцию «ВерсияБиблиотеки» в общем модуле «СтандартныеПодсистемыСервер» — строка с номером версии находится в операторе «Возврат» этой функции. Пользовательский режим для этого не нужен.
Можно ли обновить БСП отдельно от конфигурации?
Для типовых конфигураций — нет: библиотека поставляется встроенной в релиз прикладного решения. Самостоятельная замена подсистем БСП в типовой конфигурации нарушит поддержку и почти гарантированно вызовет конфликты при следующем обновлении.
Что означают четыре цифры в номере версии БСП?
Номер вида 3.1.10.256 читается как редакция (3.1), подверсия (10) и номер сборки (256). Совместимость расширений и обработок обычно проверяется по редакции и подверсии, но для точной диагностики ошибок стоит фиксировать номер целиком.
Что важно запомнить
Версию БСП определяют отдельно от версии конфигурации: быстрее всего — вызовом СтандартныеПодсистемыСервер.ВерсияБиблиотеки(), надёжнее всего — сверкой метаданных с регистром «Версии подсистем». Расхождение этих значений — признак незавершённого обновления, которое нужно довести до конца до установки расширений.