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

Особое внимание уделим ситуациям, когда пользователь "завис" в системе, а его сеанс не удаётся закрыть обычными методами. Также рассмотрим нюансы для разных режимов работы : файлового, клиент-серверного и веб-клиента. Все инструкции проиллюстрированы скриншотами (для версий платформы 8.3.20+) и сопровождаются предупреждениями о возможных рисках.

Если вы администратор, который регулярно сталкивается с "подвисшими" пользователями, сохраните эту статью в закладки — здесь собраны все рабочие методы, включая редко документированные приёмы для rac и rphost.

1. Стандартное завершение работы через интерфейс 1С

Самый безопасный способ — когда пользователь самостоятельно закрывает сеанс. Для этого в главном меню программы нужно выбрать Файл → Выход (или нажать комбинацию Alt+F4). Система предложит сохранить открытые документы и отчёты, после чего сеанс будет корректно завершён.

В веб-клиенте процесс аналогичный: кнопка выхода расположена в правом верхнем углу (иконка пользователя). Важно дождаться сообщения "Сеанс завершён" — если закрыть вкладку браузера раньше, возможны блокировки объектов в базе.

  • 🔹 Файловый режим: сеанс закрывается моментально, блокировки снимаются сразу.
  • 🔹 Клиент-серверный режим: может потребоваться до 30 секунд на освобождение ресурсов сервера.
  • 🔹 Веб-клиент: проверьте, что в браузере не осталось "мёртвых" вкладок с 1С — они могут держать соединение.
💡

Если после выхода из 1С в диспетчере задач остаётся процесс 1cv8.exe или 1cv8c.exe, принудительно завершите его через Task Manager — это устранит скрытые блокировки.

2. Завершение сеанса другого пользователя (для администраторов)

Если пользователь забыл выйти из системы или его компьютер "завис", администратор может принудительно закрыть сеанс. Для этого:

  1. Откройте Консоль администрирования 1С (Пуск → 1С Предприятие → Администрирование серверов 1С:Предприятия).
  2. Выберите нужный кластер и базу данных в дереве слева.
  3. Перейдите на вкладку Сеансы — здесь отображаются все активные подключения.
  4. Найдите пользователя по имени или IP, кликните правой кнопкой и выберите Завершить сеанс.

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

Убедиться, что пользователь не работает с критичными данными|Проверить наличие несохранённых документов в его сеансе|Предупредить пользователя по телефону/мессенджеру (если возможно)|Зафиксировать время завершения для отчётности

-->

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

3. Принудительное завершение через rac (для опытных администраторов)

Если консоль администрирования недоступна (например, из-за сбоя кластера), можно использовать утилиту командной строки rac. Она входит в комплект поставки серверной части 1С:Предприятия и позволяет управлять сеансами напрямую.

Основные команды:

rac session terminate --cluster=ИмяКластера --session=ИдентификаторСеанса

rac session list --cluster=ИмяКластера # Посмотреть список сеансов

Чтобы найти идентификатор сеанса, сначала выполните команду list, затем скопируйте SessionID нужного пользователя. Пример вывода:

ПолеЗначениеПояснение
SessionIDS-00000000000000000001Уникальный идентификатор сеанса
UserNameИвановИИИмя пользователя в 1С
Host192.168.1.105IP-адрес клиента
AppIDThinClientТип клиента (Тонкий, Толстый, Веб)
StartedAt2026-05-20T14:30:00Время начала сеанса

После выполнения terminate сеанс будет закрыт без дополнительных подтверждений. Этот метод работает даже если кластер частично недоступен, но требует прав администратора ОС.

Что делать, если rac не находит сеансы?

Убедитесь, что утилита запущена от имени администратора. Если сеансы не отображаются, проверьте статус кластера командой rac cluster list. Возможно, служба ragent не запущена — перезапустите её через services.msc.

4. Завершение через rphost (для файлового режима)

В файловом варианте работы (без сервера) сеансы управляются процессом rphost.exe. Если пользователь "завис" и его нельзя завершить через интерфейс, найдите этот процесс в Диспетчере задач:

  1. Откройте Task Manager (Ctrl+Shift+Esc).
  2. На вкладке Подробности отсортируйте процессы по имени и найдите rphost.exe.
  3. Проверьте в столбце Имя пользователя, кому принадлежит процесс.
  4. Выделите процесс и нажмите Завершить задачу.

В отличие от клиент-серверного режима, здесь нет "мягкого" завершения — все несохранённые данные этого пользователя будут утеряны. Используйте этот метод только в крайних случаях!

⚠️ Внимание: Если в файловой базе одновременно работало несколько пользователей, завершение rphost.exe разорвёт все активные сеансы. Предварительно предупредите коллег.

5. Автоматическое завершение неактивных сеансов

Чтобы избегать ручного завершения "забытых" сеансов, настройте автоматическое отключение неактивных пользователей. Это делается в конфигураторе:

  1. Откройте базу в режиме Конфигуратор.
  2. Перейдите в Администрирование → Настройки программы → Сеансы.
  3. Установите флаг Автоматически завершать неактивные сеансы.
  4. Задайте период неактивности (рекомендуется 30-60 минут).

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

Раз в неделю или чаще|1-2 раза в месяц|Реже чем раз в месяц|Никогда не приходилось|Не знаю, как это делать-->

Обратите внимание: настройка действует только на клиент-серверный и файловый режимы. Для веб-клиента тайм-аут сеанса настраивается отдельно в параметрах публикации на веб-сервере (IIS или Apache).

6. Особенности для веб-клиента и мобильного приложения

В веб-версии сеансы управляются иначе из-за особенностей работы браузера. Чтобы корректно завершить работу:

  • 🌐 Пользователь: должен нажать "Выход" в интерфейсе 1С, а затем закрыть вкладку браузера. Если просто закрыть вкладку без выхода, сеанс может остаться активным до истечения тайм-аута.
  • 🖥️ Администратор: может завершить сеанс через консоль администрирования (как в разделе 2) или перезапустить пул приложений IIS, если 1С "зависла".
  • 📱 Мобильное приложение: сеансы автоматически завершаются при закрытии приложения, но иногда требуется принудительный выход через настройки устройства (Настройки → Приложения → 1С → Остановить).

Для веб-клиента критически важно настроить тайм-аут сеанса на веб-сервере. По умолчанию он составляет 20 минут, но для публичных порталов (например, 1С:Личный кабинет) рекомендуется уменьшить до 10 минут.

💡

В веб-клиенте всегда проверяйте, не осталось ли "мёртвых" сеансов после обновления конфигурации. Они могут блокировать реструктуризацию базы.

7. Диагностика и устранение последствий неправильного завершения

Если сеанс был завершён некорректно (например, через Task Manager или отключение питания), в базе могут остаться блокировки или незафиксированные транзакции. Для диагностики:

  1. Проверьте журнал событий кластера (rac event-log list).
  2. Запустите тестирование и исправление базы через chdbfl.exe (для файлового варианта).
  3. В клиент-серверном режиме выполните команду:
    rac db-check --cluster=ИмяКластера --infobase=ИмяБазы --check-and-fix

Типичные ошибки после принудительного завершения:

  • 🔴 Блокировка объекта базы данных — решается перезапуском кластера.
  • 🔴 Несоответствие итогов — требует перепроведения документов.
  • 🔴 Ошибка чтения данных — может потребовать восстановления из резервной копии.

Если проблема повторяется регулярно, настройте автоматическое резервное копирование перед критичными операциями (например, через 1С:Технология автоматизированного тестирования).

💡

Создайте в конфигураторе обработку для массового завершения сеансов с возможностью выбора пользователей. Это сэкономит время при плановых работах.

FAQ: Частые вопросы о завершении сеансов в 1С

Можно ли завершить сеанс пользователя, если он работает с документом?

Технически да, но это приведёт к потере несохранённых данных. Если документ был начат, но не проведён, он останется в базе в статусе "Не проведён". Для критичных документов (например, банковских выписок) лучше дождаться, пока пользователь завершит работу самостоятельно.

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

Это происходит из-за "липких" сеансов в кластерном режиме. Попробуйте:

  1. Выполнить rac session terminate --force.
  2. Перезапустить службу ragent на сервере.
  3. Проверить, не используется ли балансировщик нагрузки (например, Nginx), который может кэшировать сеансы.
Как завершить все сеансы сразу (например, для обновления конфигурации)?

Используйте команду:

rac session terminate-all --cluster=ИмяКластера --infobase=ИмяБазы

Но перед этим обязательно:

  • Предупредите пользователей за 10-15 минут.
  • Убедитесь, что нет длинных операций (например, формирования отчётов).
  • Сделайте резервную копию базы.

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

Скорее всего, произошла ошибка блокировки. Порядок действий:

  1. Проверьте файлы блокировок в каталоге базы (расширение *.lck) и удалите их.
  2. Запустите chdbfl.exe с ключом /IBCheckAndRepair.
  3. Если база на SQL, выполните DBCC CHECKDB в Management Studio.
  4. В крайнем случае восстановите базу из резервной копии.

Если проблема повторяется, проверьте права доступа к каталогу базы и настройки антивируса (он может блокировать файлы 1CD).

Как ограничить количество сеансов для одного пользователя?

В клиент-серверном режиме это настраивается в Консоли администрирования:

  1. Выберите базу → Свойства → вкладка Лицензии.
  2. Установите лимит на количество сеансов для ролей или конкретных пользователей.
  3. Для файлового режима лимиты задаются в настройках 1С:Предприятия (раздел Администрирование → Лицензирование).

Обратите внимание: лимиты действуют только на одновременные сеансы. Пользователь может открывать новые сеансы после закрытия старых.