К статье
Практический материал

Администрирование · 10 мин

Активные сеансы 1С не завершаются принудительно: причины и решение

Почему в 1С появляется ошибка «имеются активные сеансы работы с программой, которые не могут быть завершены принудительно» и как корректно завершить зависшие сеансы.

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

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

Ниже разобраны причины зависания сеансов, способы их корректного завершения в файловом и клиент-серверном вариантах, а также меры профилактики, которые снижают частоту проблемы.

Почему сеансы не завершаются: основные причины

Чаще всего источник проблемы — не пользователи, а «мёртвые» соединения. Когда компьютер пользователя выключается аварийно, теряет сеть или клиент 1С завершается с ошибкой, сервер 1С ещё некоторое время считает сеанс активным. Пока не истечёт таймаут проверки соединений, платформа отказывается завершать такой сеанс принудительно.

Вторая группа причин — программные подключения, о которых администратор забывает: фоновые задания, регламентные операции, COM-соединения из внешних скриптов, веб-сервисы, сеансы отладчика и автоматизированного тестирования. Они отображаются в консоли кластера как отдельные сеансы и тоже блокируют монопольный режим.

Третья причина — реально работающие пользователи. Если кто-то держит открытым тонкий или толстый клиент, платформа корректно отказывается разрывать сеанс без потери данных, особенно когда у пользователя есть несохранённые изменения в открытом документе.

Сеанс без активности длительное времяВероятно, зависшее соединение

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

Приложение — фоновое заданиеВыполняется регламентная операция

Список фоновых заданий и их состояние

Сеанс от неизвестного компьютераCOM-соединение или веб-сервис

Внешние скрипты, обмены, планировщики задач

Много сеансов одного пользователяПовторные запуски клиента

Процессы 1cv8 на компьютере пользователя

Как найти зависшие сеансы в консоли кластера

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

Ключевой признак зависшего сеанса — давнее время последнего обращения при отсутствии реальной работы пользователя. Если пользователь уверяет, что давно закрыл программу, а сеанс висит с устаревшей активностью — это «мёртвое» соединение, которое сервер ещё не отработал по таймауту.

Отдельно проверьте вкладку «Соединения»: иногда сеанс уже удалён, а соединение с рабочим процессом осталось. Такие «осиротевшие» соединения также могут мешать установке монопольного режима, хотя в списке сеансов их уже нет.

Штатные способы завершения сеансов

Первый безопасный способ — удаление сеанса из консоли кластера: выделите сеанс и выберите «Удалить». Платформа пошлёт клиенту команду завершения. Если клиент жив, он закроется корректно; если завис — сеанс удалится из списка, но с задержкой, пока сервер убедится в отсутствии ответа.

В типовых конфигурациях на БСП есть обработка «Активные пользователи» (Администрирование — Обслуживание), которая позволяет завершать сеансы прямо из интерфейса 1С. Это удобно, когда у администратора нет доступа к консоли кластера, но есть права в самой базе.

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

Порядок действий при ошибке
  1. 1
    Откройте консоль кластера и посмотрите список сеансов базы
  2. 2
    Сверьте сеансы с реально работающими пользователями — предупредите их
  3. 3
    Завершите фоновые задания и проверьте регламентные операции
  4. 4
    Удалите зависшие сеансы через консоль
  5. 5
    Включите блокировку начала сеансов с кодом разрешения
  6. 6
    Повторите операцию, требующую монопольного режима

Что делать с «мёртвыми» сеансами, которые не удаляются

Если сеанс не удаляется штатно, самый безопасный путь — подождать срабатывания таймаутов кластера. Платформа периодически проверяет живость соединений, и «мёртвый» сеанс будет снят автоматически. Обычно это занимает от нескольких минут до десятков минут в зависимости от настроек кластера.

Когда ждать нельзя, помогает перезапуск рабочего процесса кластера (rphost), обслуживающего базу. В консоли кластера можно посмотреть, какой рабочий процесс держит соединения, и перезапустить именно его. Это мягче, чем перезапуск всего агента сервера.

Крайняя мера — перезапуск службы агента сервера 1С. Она гарантированно снимает все сеансы, но обрывает работу всех пользователей всех баз кластера без сохранения данных. Перед этим обязательно предупредите пользователей и дайте им время завершить работу.

Особенности файлового варианта

В файловой базе ошибка чаще всего связана с процессами 1cv8.exe, оставшимися на компьютерах пользователей после аварийного завершения. Попросите пользователей открыть диспетчер задач и завершить процессы 1cv8.exe и 1cv8c.exe, либо сделайте это удалённо, если есть доступ.

Если база размещена в сетевой папке, проверьте, не держит ли файл блокировки какой-либо компьютер. Иногда помогает команда net session на файловом сервере, показывающая открытые сетевые подключения к общей папке с базой.

После аварийного завершения файловой базы перед повторным запуском монопольных операций рекомендуется выполнить тестирование и исправление через конфигуратор — это заодно снимет устаревшие блокировки и проверит целостность данных.

Маршрут решения

Как выбрать действие

Сеанс принадлежит работающему пользователюПопросите завершить работу и включите блокировку сеансов
Сеанс давно без активности, пользователь вышелУдалите сеанс в консоли кластера или дождитесь таймаута
Сеанс — фоновое заданиеДождитесь завершения или отмените задание штатно
Сеанс не удаляется никакПерезапустите рабочий процесс кластера, предупредив пользователей
Файловая база, монопольный режим недоступенПроверьте процессы 1cv8 на ПК пользователей и сетевые подключения

Профилактика: как снизить частоту зависших сеансов

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

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

Регулярно проверяйте внешние интеграции: скрипты обмена, COM-подключения и веб-сервисы должны завершать соединения после работы. «Подвисшие» интеграционные сеансы — частый скрытый источник проблемы, о котором вспоминают в последнюю очередь.

Типичные ошибки
01
Перезагрузка сервера без предупреждения — потеря несохранённых данных пользователей
02
Игнорирование фоновых заданий — монопольный режим снова не устанавливается
03
Удаление сеансов без блокировки новых — пользователи переподключаются и операция срывается
04
Удаление файла блокировок вручную в файловой базе — риск повреждения данных

Проверка результата

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

Если операция выполнилась — снимите блокировку сеансов и сообщите пользователям о возобновлении работы. Проверьте журнал регистрации на предмет ошибок, возникших во время принудительного завершения: там видно, у каких пользователей были оборваны сеансы и не пострадали ли данные.

Контрольные точки

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

Список сеансов в консоли кластера
Норма

Пуст или только сеанс администратора

Тревожный признак

Остались сеансы без активности

Монопольный режим / обновление
Норма

Устанавливается без ошибки

Тревожный признак

Ошибка об активных сеансах повторяется

Журнал регистрации
Норма

Нет массовых ошибок разрыва соединений

Тревожный признак

Ошибки транзакций и обрывов у пользователей

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

Почему сеанс не удаляется даже из консоли кластера?

Обычно это «мёртвое» соединение: клиент не отвечает, и сервер ждёт таймаут, прежде чем окончательно снять сеанс. Подождите несколько минут или перезапустите рабочий процесс кластера, обслуживающий базу.

Чем опасно принудительное завершение сеансов?

Пользователь теряет несохранённые данные в открытых документах. Если разрыв произошёл в середине транзакции, возможны ошибки в журнале регистрации, требующие проверки. Поэтому перед массовым завершением всегда предупреждайте пользователей.

Как завершить сеансы, если нет доступа к консоли кластера?

В конфигурациях на Библиотеке стандартных подсистем используйте обработку «Активные пользователи» в разделе «Администрирование». Она позволяет завершать сеансы из интерфейса 1С при наличии прав администратора в базе.

Может ли фоновое задание блокировать монопольный режим?

Да. Регламентные и фоновые задания создают собственные сеансы, которые платформа учитывает как активные. Перед установкой монопольного режима завершите или отмените выполняющиеся задания.

Что делать, если ошибка повторяется регулярно?

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

Итог

Что важно запомнить

Ошибка об активных сеансах почти всегда связана с зависшими соединениями, фоновыми заданиями или реально работающими пользователями. Действуйте по порядку: анализ сеансов, штатное завершение, блокировка новых подключений, и только в крайнем случае — перезапуск процессов с предупреждением пользователей.