Внедрение библиотеки стандартных подсистем в свою конфигурацию

· 9 мин

Содержание

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

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

Перед любыми изменениями сохраните конфигурацию в файл .cf и выгрузите базу в .dt. Объединение затрагивает сотни объектов, а откатить его по шагам нельзя.

Расширение или встраивание: как подключить БСП в 1С 8.3

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

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

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

СпособКогда применятьРиски
Встроить БСП в свою конфигурацию через объединениеНовая или собственная конфигурация без БСПТрудоёмкий первый раз, нужно аккуратно настроить объединение
Расширение конфигурации (.cfe)Доработка типовой конфигурации, где БСП уже естьНе подходит для установки самой библиотеки
Взять демо-конфигурацию БСП как основуУчебный проект, прототипВ конфигурацию попадает лишнее из демо-примеров

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

Подготовка: платформа, режим совместимости и дистрибутив библиотеки

Где взять БСП

Библиотека распространяется бесплатно для партнёров и разработчиков, у кого есть доступ к порталу обновлений 1С. Скачивается дистрибутив конкретной версии в виде архива с программой установки setup.exe.

Что проверить до установки

  • 🧩 Версию платформы. У каждой версии БСП в документации указан минимальный номер платформы. Номер установленной у вас платформы должен быть не ниже его.
  • ⚙️ Режим совместимости. В свойствах корня вашей конфигурации посмотрите Режим совместимости. Для свежей БСП он должен быть не ниже того, что указан в её требованиях.
  • 🖥️ Интерфейс. Библиотека ориентирована на управляемое приложение и интерфейс «Такси». Обычное приложение для новых версий БСП не подходит.
  • 💾 Резервную копию. Файл .cf вашей конфигурации и .dt базы.

Установка дистрибутива

  1. Распакуйте архив и запустите setup.exe.
  2. Укажите каталог шаблонов. По умолчанию это каталог шаблонов конфигураций 1С в профиле пользователя (%APPDATA%\1C\1cv8\tmplts).
  3. После установки в каталоге шаблонов появится папка с версией БСП. Внутри — файл конфигурации библиотеки 1Cv8.cf, демо-конфигурация, документация и обработка первого внедрения.

На этом этапе в вашу базу ничего не попадает. Вы просто получили файлы поставки.

Готовность к установке БСП
Выполнено: 0 / 7

Выбор подсистем: обработка первого внедрения

БСП состоит из десятков подсистем. Часть обязательна — например, «Базовая функциональность», «Обновление версии ИБ», «Пользователи». Остальные подключают по потребности: «Печать», «Присоединённые файлы», «Управление доступом», «Дополнительные отчёты и обработки» и другие.

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

Порядок работы с ней:

  1. Создайте новую информационную базу из шаблона БСП (именно библиотеки, не демо).
  2. Запустите её в режиме 1С:Предприятие и откройте обработку через Файл → Открыть.
  3. Отметьте подсистемы, которые нужны. Зависимые подсистемы обработка отметит сама.
  4. Сохраните файл настроек объединения. Это XML-файл с перечнем объектов для переноса.

💡 Начинайте с минимума. Подсистему проще добавить потом повторным объединением, чем вычистить лишнюю, которая уже обросла данными и ссылками.

Установка БСП через Конфигуратор: объединение конфигураций

Работайте на копии базы. Откройте её в Конфигураторе.

Шаг 1. Запустите сравнение

  1. Откройте конфигурацию: Конфигурация → Открыть конфигурацию.
  2. Выберите Конфигурация → Сравнить, объединить с конфигурацией из файла.
  3. Укажите файл 1Cv8.cf из каталога шаблонов БСП.
  4. Платформа спросит, поставить ли конфигурацию на поддержку. Соглашайтесь — тогда в следующий раз БСП можно будет обновлять как поставщика, а не повторять всё вручную.

Шаг 2. Загрузите настройки из обработки

В окне сравнения откройте меню действий и загрузите настройки из файла, который сохранила обработка первого внедрения. Флажки у объектов расставятся автоматически.

Проверьте отметки глазами в трёх местах:

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

Шаг 3. Выполните объединение

  1. Нажмите Выполнить.
  2. Если платформа покажет список объектов, на которые ссылаются перенесённые, но не отмеченные — добавьте их к объединению. Иначе получите битые ссылки.
  3. Запустите Конфигурация → Проверка конфигурации и исправьте ошибки.
  4. Обновите конфигурацию базы данных (F7).

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

Ручная доводка: модули, версия и определяемые типы

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

Модуль сеанса

В процедуре УстановкаПараметровСеанса добавьте вызов библиотеки:

Процедура УстановкаПараметровСеанса(ИменаПараметровСеанса)
	
	СтандартныеПодсистемыСервер.УстановкаПараметровСеанса(ИменаПараметровСеанса);
	
КонецПроцедуры

Модуль управляемого приложения

Обработчики начала и завершения работы передают управление клиентским модулям БСП:

Процедура ПередНачаломРаботыСистемы()
	СтандартныеПодсистемыКлиент.ПередНачаломРаботыСистемы();
КонецПроцедуры

Процедура ПриНачалеРаботыСистемы()
	СтандартныеПодсистемыКлиент.ПриНачалеРаботыСистемы();
КонецПроцедуры

Процедура ПередЗавершениемРаботыСистемы(Отказ, ТекстПредупреждения)
	СтандартныеПодсистемыКлиент.ПередЗавершениемРаботыСистемы(Отказ, ТекстПредупреждения);
КонецПроцедуры

Если у вас уже был свой код в этих процедурах, оставьте его после вызовов БСП.

Свой модуль обновления и версия

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

  1. Создайте общий серверный модуль, например ОбновлениеИнформационнойБазыМояКонфигурация.
  2. В нём опишите процедуру ПриДобавленииПодсистемы(Описание): заполните Описание.Имя и Описание.Версия.
  3. Зарегистрируйте модуль в ПодсистемыКонфигурацииПереопределяемый.ПриДобавленииПодсистем, добавив его имя в коллекцию модулей.
  4. Заполните свойство Версия в корне конфигурации в формате 1.0.0.1. Номер должен совпадать с тем, что вы указали в модуле.
Процедура ПриДобавленииПодсистемы(Описание) Экспорт
	
	Описание.Имя    = "МояКонфигурация";
	Описание.Версия = "1.0.0.1";
	
КонецПроцедуры

Сюда же потом будете добавлять обработчики обновления данных при переходе на новую версию своей конфигурации.

Определяемые типы и переопределяемые модули

Многие подсистемы работают через определяемые типы. Например, чтобы прикрепить файлы к вашему справочнику «Договоры», его тип добавляют в определяемый тип владельцев присоединённых файлов.

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

💡 Найти все определяемые типы, которые нужно заполнить, удобно поиском по документации из поставки: в описании каждой подсистемы есть раздел про внедрение.

Права доступа и роли пользователей после установки

БСП приносит свои роли. Ключевые для запуска — ПолныеПрава и АдминистраторСистемы.

Что сделать с ролями

  • 👤 Свои роли не удаляйте. Добавьте в них права на объекты БСП, которые нужны вашим пользователям: справочник пользователей , регистры сведений, общие формы. В поставке есть базовые роли для пользователей — посмотрите их состав и примените к своему набору.
  • 🔐 Основные роли конфигурации. В свойствах корня проверьте список основных ролей. Они действуют, пока в базе нет ни одного пользователя: укажите там ПолныеПрава и АдминистраторСистемы, чтобы первый вход прошёл с правами администратора.
  • 🛡️ Управление доступом. Если подключили эту подсистему, права раздают не ролями напрямую, а через профили групп доступа в режиме 1С:Предприятие. Роли в Конфигураторе пользователям тогда не назначают.

Первый пользователь

Создайте в режиме 1С:Предприятие пользователя-администратора через справочник «Пользователи» из БСП. Подсистема сама создаст пользователя информационной базы и назначит роли. Если завести пользователя через Администрирование → Пользователи в Конфигураторе, его придётся потом сопоставлять со справочником.

Первый запуск базы с БСП и проверка

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

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

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

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

Ошибки при установке БСП и как их устранить

Диагностика: выберите симптом

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

Обновление БСП до новой версии

Обновлять библиотеку нужно, чтобы получать исправления и поддержку новых платформ.

Если конфигурация поставлена на поддержку БСП

  1. Установите новый дистрибутив БСП в каталог шаблонов.
  2. В Конфигураторе: Конфигурация → Поддержка → Обновить конфигурацию и укажите новый 1Cv8.cf.
  3. В окне сравнения проверьте объекты, которые вы меняли (модули с Переопределяемый в имени, модули приложения и сеанса). Для них выберите объединение с приоритетом своей конфигурации или перенесите изменения вручную.
  4. Проверка конфигурации, обновление базы данных, первый запуск.

Если на поддержку не ставили

Обновление идёт так же, как первая установка: сравнение с файлом нового 1Cv8.cf с настройками объединения. Это дольше и рискованнее, поэтому при первой установке лучше соглашаться на поддержку.

Читайте документ с описанием изменений, который лежит в поставке новой версии. В нём перечислено, какие методы переименованы или удалены. Ваш код, который вызывал старые методы, после обновления перестанет компилироваться.

💡 Не перескакивайте через много версий за раз, если в описании изменений сказано про особый порядок перехода. Иногда разумнее обновиться в два приёма.

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

Сколько стоит БСП?
Сама библиотека бесплатна. Доступ к дистрибутиву получают через портал обновлений 1С при наличии договора поддержки или партнёрского статуса.
Можно ли установить только одну подсистему, например «Печать»?
Да, но с обязательными зависимостями. Обработка первого внедрения покажет, какие подсистемы потянутся следом, — как минимум «Базовая функциональность».
Нужно ли ставить БСП в 1С:Бухгалтерию или ЗУП?
Нет. Типовые конфигурации уже содержат БСП. Её версия обновляется вместе с релизом типовой.
Как узнать, какая версия БСП встроена в конфигурацию?
Откройте в Конфигураторе общий модуль ОбновлениеИнформационнойБазыБСП: в процедуре ПриДобавленииПодсистемы указана версия библиотеки.
Можно ли удалить БСП из конфигурации?
Технически да, но на практике это переписывание половины проекта: документы, формы и права начинают зависеть от библиотеки почти сразу.