Рассмотрим распространенную техническую ситуацию: в организации используется 1С:Розница на двух рабочих местах. На основном компьютере (условно «сервер») установлена база и активирована одна программная лицензия. На втором компьютере («товаровед») куплена и активирована вторая лицензия. После обновления платформы с версии 8.3.16.1148 на 8.3.18.1483 возникла проблема: если товаровед подключается к базе через удаленный рабочий стол (RDP) на серверный ПК, программа выдает ошибку «Нет свободной лицензии», хотя раньше такая схема работала.
Разберем детально причины такого поведения системы защиты 1С и проанализируем способы восстановления работоспособности.
Выясним причину, почему обновление платформы могло повлиять на работу. Программная лицензия 1С представляет собой файл с расширением .lic, который привязывается к уникальным параметрам компьютера (имя ПК, материнская плата, процессор, объем ОЗУ, версия ОС и параметры сетевых адаптеров). Когда мы запускаем программу, механизм защиты выполняет поиск лицензии в определенной последовательности.
Проанализируем разницу в поиске лицензий при локальном и удаленном запуске:
Тонкий клиент на своем физическом компьютере, программа ищет лицензию локально на его диске. Она находит активированный ключ и успешно запускается.1cv8.exe запускается фактически на сервере. Для системы защиты 1С в этот момент «компьютером» является сервер. Программа начинает искать файл .lic на диске сервера. Она не может «увидеть» лицензию, которая лежит на физическом компьютере товароведа, так как RDP-сессия изолирована.Почему же это работало раньше? В старых версиях платформы (до ветки 8.3.18) механизмы проверки лицензий в терминальных сессиях имели определенные особенности, которые иногда позволяли использовать лицензии некорректным образом или кэшировать их. В новых релизах 1С существенно ужесточила контроль. Теперь сессия RDP однозначно требует наличия лицензии либо на сервере, либо раздаваемой сервером (в случае клиент-серверного варианта или публикации через веб-сервер).
Прежде чем приступать к активным действиям, выполним диагностику. Рассмотрим, как получить точную информацию об ошибке:
Когда на экране появляется окно «Лицензия не обнаружена», нажмем кнопку «Подробно». Перед нами откроется технический лог, который нужно внимательно изучить. Проанализируем типичные записи в этом логе:
Локальный ключ защиты не найден и перечисление путей к файлам на сервере, это подтверждает, что программа ищет ключ в контексте удаленной сессии.Превышено максимальное количество пользователей разрешенное файлом программной лицензии, значит, программа нашла файл лицензии на сервере, но он уже занят сессией кассира.Ошибка привязки программной лицензии к компьютеру, это означает, что после обновления платформы или изменения параметров ОС старая лицензия стала невалидной и требует реактивации с использованием резервного пин-кода.Это наиболее правильный и современный способ организовать работу двух пользователей в 1С:Розница без использования RDP. Разберем его по шагам:
Вместо того чтобы подключаться к удаленному рабочему столу, мы заставим основной компьютер «раздавать» базу через веб-протокол (HTTP). Для этого необходимо установить веб-сервер (например, Apache или IIS) на компьютер, где лежит база.
Конфигуратор зайдем в меню Администрирование — Публикация на веб-сервере.На веб-сервере и указав адрес основного ПК.При такой схеме товаровед работает в обычном окне 1С на своем компьютере. Программа сначала попытается найти его локальную лицензию. Если она активирована на его ПК, проблем не возникнет. Если же мы хотим, чтобы обе лицензии «жили» на сервере, веб-сервер сможет самостоятельно распределять их между подключившимися пользователями.
Если специфика работы требует обязательного использования RDP (например, на компьютере товароведа вообще нет платформы или он очень слабый), проанализируем другой вариант решения.
Нам необходимо сделать так, чтобы на «серверном» компьютере (куда заходят по RDP) было доступно сразу две лицензии. Поскольку у нас есть две однопользовательские лицензии (одна кассира и одна товароведа), мы можем активировать их обе на одном компьютере.
Важный нюанс: программная лицензия при активации «сгорает» на старом месте. Если мы активируем лицензию товароведа на сервере кассира, товаровед больше не сможет запустить 1С локально на своем ПК. Он сможет работать только через удаленный рабочий стол.
Алгоритм действий:
Получить лицензию.Теперь на сервере будут лежать два файла .lic. Один будет подхватываться локальным сеансом кассира, второй — терминальным сеансом товароведа.
При любых манипуляциях с программными лицензиями помним о техническом ограничении. Каждая лицензия поставляется с ограниченным набором пин-кодов (обычно 1 основной и 2-3 резервных). Рассмотрим, что делать, если они закончились:
Если при попытке восстановить или перенести лицензию выяснилось, что все пин-коды использованы, необходимо написать письмо в Центр лицензирования 1С (lic@1c.ru). В письме укажите регистрационный номер, данные организации и причину запроса (например, «Обновление платформы и изменение технических параметров RDP-сессий»). Обычно новый пин-код предоставляется в течение суток.
Подведем итоги нашего анализа. Проблема «исчезновения» лицензии после обновления платформы 8.3.18 в 90% случаев связана с тем, что 1С стала строже проверять среду запуска. Для исправления ситуации выполним следующие действия:
Подробно в окне ошибки, по каким путям ищется ключ.веб-сервер. Это снимет большинство вопросов с блокировкой лицензий и позволит пользователям работать комфортно в своих локальных ОС.Помните, что использование Тонкого клиента через HTTP-соединение — это стандарт индустрии для современных версий 1С, обеспечивающий максимальную стабильность системы лицензирования.