Как исправить ошибку «Не обнаружено свободной лицензии 1С» при работе с плагином Saby (СБИС)?

Системный администратор 1С v8.3 (Управляемые формы) IT и автоматизация бизнеса
← На главную

При работе с внешними системами документооборота, такими как Saby (СБИС), пользователи часто сталкиваются с парадоксальной ситуацией: основное приложение 1С запускается без проблем, но при попытке выгрузить документы через плагин (поможет модуль выгрузки документов в XML-формат для СБИС) возникает ошибка: «Лицензия в вашей системе не позволяет установить еще один сеанс. Расширьте лицензию или закройте сеансы. Не обнаружено свободной лицензии 1С». В этой статье мы подробно разберем, почему возникает эта коллизия и как правильно настроить систему, чтобы избежать лишних затрат на покупку дополнительных лицензий.

Анализируем причину возникновения ошибки

Рассмотрим стандартную ситуацию. У бухгалтера на компьютере установлена локальная программная однопользовательская лицензия. Платформа 1С при запуске находит этот ключ и позволяет открывать произвольное количество баз в рамках одного рабочего места. Однако, если база данных опубликована на веб-сервере (Apache или IIS), и плагин Saby использует тип подключения Fresh, механизм поиска лицензии кардинально меняется.

Разберем по шагам, что происходит в момент обращения плагина к базе:

  1. Плагин инициирует HTTP-запрос к веб-серверу, на котором опубликована информационная база.
  2. Веб-сервер передает запрос модулю расширения 1С.
  3. Модуль 1С на стороне сервера пытается создать новый сеанс. Для этого ему необходима лицензия.
  4. Критический момент: серверный процесс «не видит» локальную лицензию, установленную на компьютере пользователя, так как запрос обрабатывается в контексте сервера. Он обращается исключительно к менеджеру лицензий сервера 1С или ищет многопользовательские программные лицензии, активированные непосредственно на сервере.

Таким образом, даже если у вас есть свободная локальная лицензия, плагин Saby через веб-сервер ее использовать не сможет. Ему нужен свободный «слот» в серверном пуле.

Вариант решения №1: Правильная активация программных лицензий

Если вы приобрели комплект лицензий (например, на 5 рабочих мест), у вас обычно есть два набора пин-кодов: для однопользовательской и многопользовательской активации. Проанализируем, как ими распорядиться наиболее эффективно в нашей ситуации.

Рассмотрим рекомендуемую схему распределения:

Важное замечание: если вы активируете лицензию на сервере в многопользовательском режиме, 1С начнет строго считать сеансы. В этом случае, если бухгалтер открыл базу через Тонкий клиент и одновременно запустил синхронизацию через Saby Fresh, будут израсходованы две лицензии из общего пула. Поэтому активация локальных ключей на клиентских ПК часто оказывается более выгодной.

Вариант решения №2: Изменение типа подключения в Saby

Если расширение серверного пула лицензий невозможно, мы можем изменить логику работы самого плагина. Проанализируем настройки подключения Saby. Вместо режима «Fresh» (подключение через URL веб-сервера), попробуем перенастроить плагин на прямое взаимодействие с базой.

Для этого выполним следующие действия:

  1. Откроем настройки плагина Saby (СБИС).
  2. Изменим тип подключения на «Тонкий клиент» или «Локально» (если база находится в той же локальной сети).
  3. Укажем прямой путь к информационной базе или адрес сервера 1С (не путать с URL веб-публикации).

В этом режиме плагин будет запускать фоновый процесс 1С непосредственно на компьютере пользователя. Система поиска лицензий отработает стандартно: она сначала проверит наличие локального ключа на ПК. Поскольку локальная лицензия позволяет запускать неограниченное число сеансов на одном месте, плагин «подхватит» существующий ключ и дополнительная лицензия на сервере не потребуется.

Вариант решения №3: Оптимизация пула соединений через default.vrd

Иногда ошибка «Нет свободной лицензии» возникает не из-за физического отсутствия ключей, а из-за того, что сеансы веб-сервисов не завершаются вовремя и «подвисают» — решить эту проблему поможет обработка автоматического завершения сеансов 1С. Проанализируем файл конфигурации публикации default.vrd, который находится в каталоге публикации на веб-сервере.

В этом файле можно управлять параметрами пула соединений. Рассмотрим пример настройки:


<point xmlns="http://v8.1c.ru/8.2/virtual-resource-system"
       xmlns:xs="http://www.w3.org/2001/XMLSchema"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       base="/MyBase"
       ib="Srvr=ServerName;Ref=BaseName;">
    <ws>
        <pool size="10" timeout="60" />
    </ws>
</point>

Разберем параметры:

Уменьшение таймаута помогает быстрее освобождать лицензии, которые плагин Saby запрашивает для кратковременных операций выгрузки документов. Для этой задачи есть инструмент администрирования сеансов 1С в реальном времени.

Использование СБИС Агента и расширений

Посмотрим на современные способы интеграции. Если ваша конфигурация 1С работает на управляемых формах, рекомендуется использовать «Расширение СБИС», которое встраивается непосредственно в интерфейс 1С.

Преимущество этого метода заключается в том, что расширение работает внутри уже открытого пользователем сеанса. Оно не инициирует новое HTTP-соединение под другой учетной записью и не запрашивает отдельную лицензию у сервера. Это самый стабильный и экономный вариант для работы в облачных инфраструктурах и при использовании технологии 1cFresh.

Подведем итог: для решения проблемы лицензирования Saby необходимо либо обеспечить наличие свободной лицензии на стороне веб-сервера, либо перевести плагин на работу через Тонкий клиент, чтобы задействовать локальные ключи пользователей. Проанализируйте вашу сетевую архитектуру и выберите наиболее подходящий вариант, исходя из имеющегося парка лицензий.

← На главную