При работе с платформой 1С:Предприятие 8.3 мы часто сталкиваемся с необходимостью использовать функционал, предоставляемый Библиотекой стандартных подсистем (БСП). БСП — это фундамент для многих типовых конфигураций, предлагающий готовые, универсальные решения для общих задач, таких как работа с пользователями, настройка прав доступа, формирование отчетов, работа с файлами и многое другое. Она позволяет значительно ускорить разработку и стандартизировать прикладные решения.
Нередко возникают ситуации, когда мы находим примеры или статьи, ориентированные на конкретную версию БСП (например, 3.1.4), но в нашей текущей конфигурации (например, Управление торговлей 11.4) обнаруживаем другую, возможно, более старую версию (например, 3.1.3.573). Это может вызвать вопросы: почему версии не совпадают, где найти нужную версию БСП для изучения, и как просматривать её методы.
Прежде всего, давайте проясним, что версии 3.1.3, 3.1.4 и 3.1.5 Библиотеки стандартных подсистем являются разными и самостоятельными релизами. Это не округленные или сокращенные обозначения одной и той же версии. Каждая из этих версий содержит свои изменения, новые функциональные возможности, исправления ошибок и иногда даже переименование или перемещение существующих методов и процедур.
На момент нашего анализа, актуальной версией БСП является 3.1.5. Мы можем видеть, что в последних релизах типовых конфигураций, таких как 1С:Зарплата и Управление Персоналом (ЗУП) и 1С:Бухгалтерия Предприятия (БП), уже активно используется БСП версии 3.1.5. Например, в последних версиях ЗУП мы можем найти БСП 3.1.5.208, а в БП — 3.1.5.221. Это подтверждается файлами LibraryVersions.txt, которые прилагаются к дистрибутивам обновлений этих конфигураций.
Мы сталкиваемся с тем, что, установив актуальный релиз конфигурации 1С:Управление торговлей, редакция 11 (например, 11.4.13.282), мы обнаруживаем в ней БСП версии 3.1.3.573, а не ожидаемую 3.1.4 или более актуальную 3.1.5. Этому есть несколько причин, связанных со стратегией разработки и поддержки типовых решений фирмой "1С":
11.5. В этой новой редакции уже используется БСП версии 3.1.5 (например, 3.1.5.192). Поддержка и развитие более старых редакций, таких как 11.4, со временем сворачивается, и новые версии БСП в них уже не встраиваются. Другими словами, УТ 11.4 не будет обновляться до более новых версий БСП.Таким образом, наша конфигурация УТ 11.4 работает корректно со своей версией БСП 3.1.3.573, но она не будет автоматически обновлена до 3.1.4 или 3.1.5.
Если нам необходимо изучить методы БСП конкретной версии, не привязываясь к типовой конфигурации, существует несколько надежных способов:
Самый прямой и надежный способ — это загрузить саму конфигурацию "Библиотека стандартных подсистем" интересующей нас версии. Фирма "1С" предоставляет дистрибутивы БСП как отдельной конфигурации.
Мы можем найти эти дистрибутивы на портале 1С:Обновление программ. Например, для БСП версии 3.1.4.434 мы можем найти соответствующий дистрибутив. Обычно в комплекте поставки такой конфигурации содержится не только сама БСП, но и демонстрационная база с примерами использования всех подсистем и их методов. Это идеальный вариант для изучения и анализа.
Для доступа к порталу обновлений (releases.1c.ru) нам потребуется:
Если у нас нет прямого доступа, мы можем обратиться к своему работодателю или обслуживающей организации с просьбой предоставить необходимый дистрибутив или доступ к порталу.
На сайте Информационно-технологического сопровождения (ИТС) фирмы "1С" доступна полная документация по всем версиям БСП. Это исчерпывающий источник информации, содержащий описания подсистем, их функционала, программных интерфейсов, а также примеры использования.
Мы можем найти документацию для конкретной версии БСП, например, для 3.1.4. Доступ к сайту ИТС также требует действующего договора 1С:ИТС. Мы можем поискать разделы, посвященные разработке, а затем найти "Библиотека стандартных подсистем" и выбрать интересующую версию.
Также мы можем найти файлы LibraryVersions.txt в дистрибутивах обновлений других типовых конфигураций. В этих файлах указывается, какая версия БСП и других библиотек встроена в данный релиз.
Хотя БСП является частью многих типовых конфигураций, не всегда имеет смысл изучать её методы, используя код, встроенный непосредственно в УТ, БП или ЗУП. Причины следующие:
// Устарела. Следует использовать ВыгрузкаЗагрузкаДанных.ВыгрузитьДанныеТекущейОбластиВАрхив, но не всегда. Изучая такой код, мы можем получить неполное или даже искаженное представление об актуальных методах БСП.Поэтому для глубокого изучения БСП рекомендуется использовать либо отдельную конфигурацию "Библиотека стандартных подсистем", либо документацию на ИТС. Это позволит нам работать с чистым, полным и актуальным кодом БСП без сторонних адаптаций.
Для того чтобы узнать, какая версия БСП фактически используется в нашей текущей информационной базе, мы можем обратиться к специальному регистру сведений. В БСП предусмотрен механизм для хранения информации о версиях всех встроенных подсистем.
Мы можем посмотреть эти данные в регистре сведений ВерсииПодсистем. Он находится в составе стандартной подсистемы БСП СтандартныеПодсистемы\ОбновлениеВерсииИБ. Данные в этом регистре должны автоматически актуализироваться при каждом стандартном обновлении конфигурации.
Открыв этот регистр сведений, мы увидим список всех встроенных подсистем и их точные версии, что позволит нам точно определить, какая версия БСП присутствует в нашей информационной базе.
Если мы работаем с типовой конфигурацией 1С, и нам необходимо обновить БСП до более актуальной версии, рассмотрим несколько подходов:
Наиболее рекомендуемый и простой способ — это обновить всю типовую конфигурацию до последнего актуального релиза, в котором уже будет встроена соответствующая версия БСП. Например, если мы работаем с УТ 11.4, и нам нужна БСП 3.1.5, то нам следует обновить УТ до редакции 11.5.
Это автоматизированный процесс, который фирма "1С" обеспечивает через свои механизмы обновлений. При таком подходе мы получаем не только новую БСП, но и все остальные обновления и исправления, реализованные в новой редакции конфигурации. Обновление "всей конфигурации" гарантирует совместимость всех её частей.
Для обновления мы можем воспользоваться стандартным помощником обновления конфигурации в режиме "Конфигуратор".
Теоретически возможно обновить только БСП в существующей конфигурации, не обновляя всю конфигурацию целиком. Для этого существует специальный инструмент — помощник внедрения БСП, а также файл UpdateSSL.htm, входящий в комплект поставки БСП. В нем подробно описан порядок обновления подсистем БСП до актуальной версии и особенности перехода с предыдущих версий.
Однако этот процесс достаточно сложен и трудоемок: он требует ручного сравнения и объединения конфигураций (файла поставки новой версии БСП с нашей конфигурацией), последовательного выполнения инструкций по переходу для каждой пропущенной версии БСП, а также глубокого понимания структуры и взаимосвязей подсистем.
Мы крайне не рекомендуем этот подход для обычных пользователей или разработчиков без соответствующего опыта, так как это может привести к нарушению работоспособности конфигурации и потере данных. Этот метод целесообразен только для самописных конфигураций или в случаях, когда модификация типовой конфигурации настолько глубока, что полноценное обновление всей конфигурации становится невозможным.
Как мы уже выяснили, для получения дистрибутивов БСП и доступа к полной документации на сайте ИТС нам необходим доступ. Если мы работаем на предприятии, которое использует лицензионные продукты 1С, скорее всего, у нас уже есть действующий договор 1С:ИТС. В таком случае нам следует обратиться к руководителю или системному администратору для получения учетных данных для доступа.
Если мы являемся фрилансером или работаем самостоятельно без прямого договора ИТС, получение официального доступа может быть затруднительным. В таких случаях некоторые разработчики ищут дистрибутивы на неофициальных ресурсах или в репозиториях, однако это сопряжено с определенными рисками и не является рекомендуемой практикой.
Подводя итог, при изучении или использовании Библиотеки стандартных подсистем мы рекомендуем придерживаться следующих принципов:
ВерсииПодсистем), и старайтесь придерживаться её правил и методов, чтобы избежать конфликтов и проблем при дальнейших обновлениях.Понимание этих аспектов поможет нам эффективно работать с БСП, независимо от того, сталкиваемся ли мы с устаревшей версией в типовой конфигурации или ищем информацию о самых последних изменениях в библиотеке.