При разработке новой конфигурации «с нуля» для внутреннего пользования часто возникает необходимость использовать сразу две мощные библиотеки от фирмы «1С»: Библиотеку стандартных подсистем (БСП) и Библиотеку подключаемого оборудования (БПО). Разберем ситуацию, с которой сталкиваются многие разработчики: существует ли готовая чистая база, в которую уже встроены полные версии обеих библиотек? Выясним причину возникающих сложностей при объединении и рассмотрим подробнее процесс их правильной интеграции.
Готовой «чистой базы» (конфигурации), содержащей полный функционал одновременно и БСП, и БПО, в официальных дистрибутивах «1С» не существует. Каждая библиотека поставляется как отдельная конфигурация, и их дистрибутивы скачиваются по отдельности. Это означает, что разработчику необходимо самостоятельно «лепить» каркас будущей программы, последовательно внедряя нужные подсистемы.
Важно понимать специфику БПО: она спроектирована так, чтобы ее можно было использовать автономно. Для этого она содержит внутри себя минимально необходимый, урезанный состав объектов базовой функциональности БСП. И именно здесь кроется корень большинства проблем.
Проанализируем ситуацию, когда разработчик пытается «накатить» БПО на базу, где уже установлена полная версия БСП. Главная проблема заключается в пересечении общих модулей. Если выполнить стандартное полное объединение конфигураций, общие модули из БПО (например, ОбщегоНазначенияКлиентСервер и другие функции базового функционала) затрут своими урезанными версиями более полные аналогичные модули из уже установленной БСП. Это неизбежно «ломает» конфигурацию и вызывает множество синтаксических ошибок.
Разберем по шагам, как правильно объединить полный функционал обеих библиотек в одной пустой конфигурации без потери данных и работоспособности кода.
ПервоеВнедрениеБСП.epf. Обычно она располагается в каталоге шаблонов (если вы устанавливали конфигурацию в место по умолчанию, путь будет выглядеть примерно так: C:\Users\ИмяПользователя\AppData\Roaming\1C\1c8\tmplts\1c\SSL\Версия\ExtFiles). В этой обработке отметьте нужные вам подсистемы БСП и сформируйте файл настроек.ПодключаемоеОборудование. Если вам нужны только конкретные виды оборудования, отметьте их вложенные подсистемы (например, СканерыШтрихкода или ФискальныеРегистраторы).БазоваяФункциональность из дистрибутива БПО. Полноценная базовая функциональность уже загружена на втором шаге вместе с БСП!Даже если вы идеально расставили галочки при объединении конфигураций, подключенное оборудование не заработает «из коробки». Посмотрим на обязательный этап ручного редактирования программных модулей, который требует документация по внедрению.
Вам потребуется перенести код инициализации БПО в модули вашей конфигурации. Рассмотрим подробнее, что нужно сделать:
ПередНачаломРаботыСистемы и ПриНачалеРаботыСистемы.ОбработкаВнешнегоСобытия. Без корректной маршрутизации в этой процедуре ваша система не сможет реагировать на сканирование штрихкодов или сигналы от другого оборудования.МенеджерОборудованияПереопределяемый и МенеджерОборудованияКлиентПереопределяемый. Удалите или закомментируйте там ссылки на те типы оборудования, которые вы решили не переносить в свою конфигурацию (например, если вы не используете эквайринговые терминалы или весы с печатью этикеток). Если этого не сделать, конфигуратор выдаст ошибки неразрешенных ссылок при попытке сохранения или обновления конфигурации базы данных.При совместной интеграции критически важно следить за матрицей совместимости. Библиотеки регулярно обновляются. Свежие версии БПО всегда требуют определенной минимальной версии БСП. Если попытаться встроить старый релиз БПО в конфигурацию на базе самой свежей БСП (или наоборот), это практически гарантированно приведет к сбоям из-за вызовов устаревших или переименованных функций общих модулей. Для контроля релизов используемых компонентов подойдёт внешняя обработка для получения информации о версиях библиотек подсистем.
Кроме того, если ваша разрабатываемая конфигурация должна взаимодействовать с онлайн-кассами (для передачи тегов маркировки, формирования электронных чеков) или использовать сканеры для работы с системой «Честный знак», вам потребуется внедрить еще одну подсистему — Библиотеку интернет-поддержки пользователей (БИП). В современных релизах многие функции работы с криптографией, сертификатами и внешними веб-сервисами в БПО тесно завязаны на механизмы из БИП. Их интеграция проводится по аналогичному принципу точечного объединения.
Выполняя интеграцию последовательно и строго следуя инструкциям по внедрению для каждой конкретной версии библиотек, вы получите стабильную, «чистую» конфигурацию, обладающую всей мощью базовых механизмов «1С» и готовым функционалом для подключения любого торгового оборудования. Для быстрого изучения программных вызовов при дальнейшей разработке можно использовать справочник по методам БСП с примерами использования.