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