При разработке внешних обработок, интеграционных модулей или доработке типовых решений 1С разработчикам часто требуется знать точную версию Библиотеки стандартных подсистем (БСП), встроенную в конкретный релиз конфигурации (например, 1С:ЗУП 3, 1С:ERP или 1С:КА). Разберем все доступные способы определения версии БСП как в работающей информационной базе, так и без её развертывания.
Если информационная база уже запущена и обновлена, самый быстрый способ получить информацию — обратиться к служебному регистру сведений.
ВерсииПодсистем. Для этого перейдем через меню Функции для технического специалиста (или Все функции) в раздел Регистры сведений и выберем Версии подсистем.e1cib/list/РегистрСведений.ВерсииПодсистем.СтандартныеПодсистемы. В колонке версии будет указан точный релиз используемой библиотеки.Важное ограничение: данные в регистр ВерсииПодсистем записываются только после первого запуска базы в режиме предприятия и успешного завершения процедур обновления. Если база была создана накатом файла поставки (.cf) без выполнения процедур первого старта, регистр будет пуст.
Проанализируем программные методы, которые позволяют получить номер версии БСП в коде внешних обработок или алгоритмах конфигурации.
Для прямого вызова функции БСП используем модуль серверных процедур:
ВерсияБСП = СтандартныеПодсистемыСервер.ВерсияБиблиотеки();
Если требуется получить описание всех подсистем и извлечь номер версии через кэш, воспользуемся следующим выражением:
ВерсияБСП = СтандартныеПодсистемыПовтИсп.ОписанияПодсистем().ПоИменам["СтандартныеПодсистемы"].Версия;
Если базу запускать в пользовательском режиме не требуется, посмотрим код общих модулей через Конфигуратор:
ОбновлениеИнформационнойБазыБСП. В экспортной процедуре ПриДобавленииПодсистемы(Описание) найдем явное присвоение свойства: Описание.Версия = "X.X.X.X".СтандартныеПодсистемыСервер (или СтандартныеПодсистемыВызовСервера) — в нем расположена экспортная функция ВерсияБиблиотеки(), возвращающая текущую версию библиотеки в виде строки.СтандартныеПодсистемы — в некоторых конфигурациях разработчики указывают номер версии прямо в метаданных.Когда требуется выяснить версию БСП для конкретного релиза без развертывания базы из шаблона, изучим файлы дистрибутива:
ReadMe.txt, v8Update.htm или UpdInfo.txt. В разделах Новое в версии или Используемые библиотеки фирма «1С» публикует информацию о переходе на обновленные версии БСП..cf) можно выполнить его пакетную выгрузку в файлы с помощью ключа запуска Конфигуратора /DumpConfigToFiles и выполнить поиск строки СтандартныеПодсистемы в файле исходного кода ОбновлениеИнформационнойБазыБСП.bsl.Рассмотрим, в каких релизах конфигурации 1С:Зарплата и управление персоналом 3 использовались определенные версии БСП:
2.3.5.122.3.5.812.3.6.4 (первый релиз ветки 3.1.2 с внедренной БСП 2.3.6)2.4.2.432.4.2.1002.4.4.31Таким образом, для интеграционных модулей, требующих строго версию БСП 2.3.6, в ветке ЗУП 3.1.2 следует ориентироваться на релиз 3.1.2.294 и выше, тогда как в ветке 3.1.3 уже используется более новая линейка БСП 2.4.2.