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

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

Как завершить сеансы в 1С: инструкция для пользователей и администраторов

Как завершить сеанс в 1С: через консоль кластера, консоль администрирования, конфигуратор и программно. Разбор рисков, ошибок и проверки результата.

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

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

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

Как пользователю корректно завершить свой сеанс

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

Если программа зависла, не спешите снимать процесс через диспетчер задач. Подождите 2–3 минуты: часто 1С выполняет тяжёлую операцию (проведение большого документа, формирование отчёта). Если зависание подтвердилось, завершите процесс 1cv8.exe или 1cv8c.exe в диспетчере задач — на сервере сеанс завершится автоматически по тайм-ауту или его удалит администратор.

Как завершить сеанс через консоль кластера серверов 1С

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

Чтобы завершить конкретный сеанс, выделите его и нажмите «Удалить» (Delete) или выберите соответствующий пункт контекстного меню. Чтобы завершить все сеансы базы, выделите их с помощью Ctrl+A и удалите группой. Перед этим рекомендуется установить блокировку соединений, чтобы пользователи не подключались заново.

Завершение сеанса через консоль кластера
  1. 1
    Откройте консоль администрирования серверов 1С и раскройте нужный кластер
  2. 2
    Перейдите в ветку «Сеансы» и найдите сеансы нужной базы или пользователя
  3. 3
    Предупредите пользователей о завершении работы
  4. 4
    Выделите сеансы и нажмите Delete
  5. 5
    Проверьте, что список сеансов очистился и новые соединения не появляются

Как завершить сеансы через конфигуратор и типовые средства

В типовых конфигурациях (БП, УТ, ERP, ЗУП) есть встроенный механизм: раздел «Администрирование → Обслуживание → Блокировка работы пользователей» (в некоторых версиях — «Блокировка установки соединений с информационной базой»). Установите блокировку на нужное время, задайте сообщение пользователям и код разблокировки, затем нажмите кнопку завершения активных сеансов — пользователи получат предупреждение и будут отключены.

Список активных пользователей доступен в разделе «Администрирование → Активные пользователи». Отсюда можно увидеть, кто работает в базе, но завершить чужой сеанс отсюда можно только в клиент-серверном режиме и при наличии прав администратора.

Файловая база: особенности

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

Как завершить сеансы программно

Для автоматизации (например, перед ночным обновлением) используют встроенный язык. В клиент-серверном режиме через COM-соединение с агентом кластера (V83.COMConnector и объект IClusterInfo) можно получить список сеансов и вызвать метод их завершения. Внутри базы доступны функции ПолучитьСеансыИнформационнойБазы() и ЗавершитьСеансИнформационнойБазы() — последняя завершает сеанс по номеру.

bsl
Сеансы = ПолучитьСеансыИнформационнойБазы();
Для Каждого Сеанс Из Сеансы Цикл
    Если Сеанс.НомерСеанса <> НомерСеансаИнформационнойБазы() Тогда
        ЗавершитьСеансИнформационнойБазы(Сеанс.НомерСеанса);
    КонецЕсли;
КонецЦикла;

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

Как не допустить повторных подключений во время работ

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

Не забудьте про веб-сервисы, http-сервисы и планы обмена: внешние системы могут держать соединения с базой. Их сеансы видны в консоли кластера с типом приложения «Web-сервис» или «HTTP-сервис» и завершаются так же.

Как проверить, что все сеансы завершены

После завершения обновите список сеансов в консоли кластера (F5) — он должен быть пуст или содержать только ваш сеанс администратора. Дополнительно проверьте список соединений (ветка «Соединения»): иногда соединение остаётся после удаления сеанса, и его тоже стоит разорвать.

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

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

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

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

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

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

Появляются новые сеансы пользователей

Попытка входа под обычным пользователем
Норма

Сообщение о блокировке работы

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

Пользователь входит в базу

Фоновые задания
Норма

Не выполняются, блокировка регламентных заданий включена

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

Задания стартуют по расписанию

Типичные ошибки при завершении сеансов

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

Часто задаваемые вопросы

Почему завершённый сеанс снова появляется в списке?

Чаще всего пользователь просто перезапускает 1С или у него включено автоподключение. Также новый сеанс создают фоновые задания и внешние соединения (обмены, веб-сервисы). Решение — установить блокировку начала сеансов до завершения текущих.

Можно ли завершить сеанс, не заходя на сервер?

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

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

Несохранённые данные (открытые незаписанные документы, введённые строки) теряются. Записанные в базу данные не пострадают, но оборванная в момент проведения транзакция откатывается — документ останется непроведённым.

Как завершить сеанс «зависшего» пользователя, если он ушёл домой?

В клиент-серверной базе администратор удаляет его сеанс в консоли кластера. В файловой базе сеанс исчезнет сам после перезагрузки компьютера пользователя или завершения процесса 1С на его машине; до этого база может считать пользователя активным и занимать лицензию.

Освобождается ли лицензия сразу после завершения сеанса?

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

Можно ли завершить только фоновые задания, не трогая пользователей?

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

Итог

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

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