Контроль активных пользователей в 1С:Зарплата и Управление Персоналом 8 (ЗУП) — критически важная задача для администраторов и руководителей. Без этой информации невозможно оценить нагрузку на систему, выявить несанкционированный доступ или просто понять, почему базу «подвисает» в пиковые часы. Но стандартный интерфейс не всегда очевиден: функции просмотра сессий разбросаны по разным меню, а некоторые методы требуют прав суперпользователя или знания SQL.

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

——— ——— ———

1. Стандартный отчёт «Активные пользователи»: где искать и что показывает

Самый простой способ — воспользоваться встроенным отчётом Активные пользователи. Он доступен в большинстве версий 1С:ЗУП (включая 3.1 и 3.2) и не требует специальных прав, если у вас есть роль Администратор или Полные права.

Чтобы открыть отчёт:

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

В отчёте вы увидите таблицу с колонками:

  • 👤 Пользователь — имя учётной записи из справочника Пользователи.
  • 🖥️ Компьютер — имя или IP рабочей станции.
  • ⏱️ Время начала сеанса и Последняя активность — помогает выявить «зависшие» подключения.
  • 📄 Текущая операция — например, Открытие документа "Начисление зарплаты".
💡

Если колонки Текущая операция нет — обновите конфигурацию или проверьте настройки прав. В некоторых релизах 1С:ЗУП 3.0 эта информация скрыта по умолчанию.

Ограничения метода:

  • ❌ Не показывает историю действий — только текущий статус.
  • ❌ В файловом варианте может отображать не все сессии (например, если базу открыли через 1Cv8.exe /IBConnectionTest).
  • ❌ Нет возможности принудительно отключить пользователя из этого отчёта.

2. Журнал регистрации: кто и что делал в базе

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

Как открыть журнал:

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

Что можно узнать из журнала:

Тип событияПример записиЧто это значит
Открытие формыОткрыта форма "Справочник.Сотрудники"Пользователь просматривал список сотрудников.
Запись документаСоздан документ "Приём на работу" №123 от 15.05.2026Добавлен новый сотрудник в базу.
ОшибкаОшибка при проведении документа "Начисление зарплаты": Поле не заполненоПользователь пытался провести документ с ошибкой.
SQL-запросВыполнен запрос: SELECT * FROM Сотрудники WHERE Уволен = 0Пользователь или отчёт выполнил запрос к базе данных.

Важно: журнал регистрации не показывает текущие сессии, а только историю. Для анализа активности в реальном времени комбинируйте его с отчётом Активные пользователи.

📊 Как часто вы проверяете журнал регистрации в 1С ЗУП?
Ежедневно
Раз в неделю
Только при проблемах
Никогда

3. Просмотр сессий через «Консоль кластера» (для клиент-серверного варианта)

Если ваша 1С:ЗУП работает на сервере 1С:Предприятие, самый надёжный способ контроля — Консоль кластера серверов. Она показывает все активные соединения, включая фоновые задачи (например, регламентные задания).

Инструкция:

  1. Откройте Консоль кластера через Пуск → 1С Предприятие 8.3 → Администрирование кластера серверов.
  2. Подключитесь к вашему кластеру (укажите имя сервера и порт, обычно 1541).
  3. Перейдите на вкладку Сеансы или Соединения (в зависимости от версии консоли).
  4. В списке вы увидите все активные сессии с детализацией:
    • 🔹 Имя пользователя и база данных.
    • 🔹 IP-адрес рабочей станции.
    • 🔹 Время начала и последней активности.
    • 🔹 Блокировки (если пользователь заблокировал объекты).

Преимущества метода:

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

Консоль кластера — единственный инструмент, который показывает скрытые сессии (например, подключения через OLE или COM-соединения).

Обратите внимание: для доступа к консоли нужны права администратора сервера . Если у вас их нет, обратитесь к ИТ-отделу.

4. SQL-запрос для продвинутых пользователей

Если стандартные отчёты не дают нужной информации (например, в файловой базе или устаревшей версии 1С:ЗУП), можно использовать прямой SQL-запрос к системным таблицам. Этот метод требует знания T-SQL и доступа к серверу Microsoft SQL Server или PostgreSQL.

Пример запроса для MS SQL Server (показывает активные сессии в базе ):

SELECT

ses.session_id,

ses.login_name AS [Пользователь],

ses.host_name AS [Компьютер],

ses.last_request_start_time AS [Последняя активность],

ses.status AS [Статус],

DB_NAME(dm_tdb.database_id) AS [База данных],

dm_os_task.text AS [Текущая операция]

FROM

sys.dm_exec_sessions ses

LEFT JOIN

sys.dm_exec_connections dm_ec ON ses.session_id = dm_ec.session_id

LEFT JOIN

sys.dm_exec_requests dm_er ON ses.session_id = dm_er.session_id

OUTER APPLY

sys.dm_exec_sql_text(dm_er.sql_handle) dm_os_task

LEFT JOIN

sys.dm_tran_database_transactions dm_tdb ON ses.session_id = dm_tdb.session_id

WHERE

ses.is_user_process = 1

AND DB_NAME(dm_tdb.database_id) = 'ВашаБазаЗУП' -- Укажите имя вашей базы

ORDER BY

ses.last_request_start_time DESC;

Что можно узнать из результатов запроса:

  • 🔍 Сессии без активности (статус sleeping) — их можно безопасно закрыть.
  • 🔍 Длительные транзакции (колонка open_transaction_count), которые блокируют другие операции.
  • 🔍 Текст текущего запроса (колонка Текущая операция) — полезно для отладки.
Как завершить сессию через SQL?

Чтобы принудительно закрыть сессию, выполните команду:

KILL {session_id};

Где {session_id} — номер сессии из колонки session_id. Будьте осторожны: это может прервать важные операции!

⚠️ Внимание: Не выполняйте SQL-запросы к базе , если не уверены в их безопасности. Ошибка в запросе может привести к повреждению данных. Всегда делайте резервную копию перед экспериментами.

5. Просмотр через «Тестовое соединение» (для файловой базы)

В файловом варианте 1С:ЗУП (когда база хранится в файле .1CD) стандартные инструменты часто не показывают всех пользователей. В этом случае поможет утилита 1Cv8.exe с ключом /IBConnectionTest.

Инструкция:

  1. Закройте все экземпляры на вашем компьютере.
  2. Откройте командную строку (Win + R → cmd).
  3. Выполните команду:
    "C:\Program Files\1cv8\8.3.{версия}\bin\1cv8.exe" /IBConnectionTest "Srvr=localhost;Ref=ВашаБаза;"

    Где {версия} — ваша версия платформы (например, 8.3.22.1864), а ВашаБаза — имя файловой базы.

  4. В окне результатов найдите блок Active sessions — там будут перечислены все подключённые пользователи.

Особенности метода:

  • ✅ Работает даже если база «зависла» и не открывается в обычном режиме.
  • ✅ Показывает скрытые подключения (например, от внешних отчётов).
  • ❌ Не показывает детали действий пользователей (только факт подключения).

Убедитесь, что у вас есть права на папку с базой|Закройте все экземпляры 1С на компьютере|Сделайте резервную копию файла .1CD|Проверьте версию платформы 1С (в свойствах ярлыка)

-->

6. Использование внешних обработок для мониторинга

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

Популярные обработки:

  • 📊 «Монитор активных пользователей» — показывает сессии с детализацией до открытых документов. Скачать на Инфостарте.
  • 🔍 «Анализ блокировок» — выявляет, какие объекты заблокированы и кем.
  • ⏱️ «Журнал активности» — ведёт лог действий пользователей в реальном времени.

Как подключить обработку:

  1. Скачайте файл обработки (.epf или .erf).
  2. В 1С:ЗУП откройте Файл → Открыть… и выберите скачанный файл.
  3. Следуйте инструкциям обработки (обычно нужно нажать Запустить или Выполнить).

Преимущества внешних обработок:

  • ✅ Часто содержат расширенную аналитику (например, графики нагрузки по времени).
  • ✅ Можно настроить автоматические оповещения о подозрительной активности.
  • ✅ Поддерживают экспорт в Excel для дальнейшего анализа.
💡

Перед установкой обработки проверьте её совместимость с вашей версией 1С:ЗУП и платформы. Некоторые обработки требуют доработки для актуальных релизов.

7. Как закрыть «зависшие» сессии без перезагрузки сервера

Если в базе висит пользователь, который давно не активен, но его сессия не закрывается автоматически, её можно принудительно завершить. Способы зависят от варианта работы :

Для клиент-серверного варианта:

  • Через Консоль кластера (см. раздел 3): выделите сессию → Завершить сеанс.
  • Через SQL-запрос (см. раздел 4): KILL {session_id}.

Для файловой базы:

  • Используйте утилиту chdbfl.exe (входит в комплект ):
    chdbfl.exe /D"Путь\к\базе.1CD" /CUser:ИмяПользователя
  • Перезапустите службу Агент сервера 1С:Предприятие 8.3 (если база подключена через сервер).

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

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

  • Проверьте, не заблокирован ли файл базы (.1CD) антивирусом или другим ПО.
  • Перезагрузите сервер (в клиент-серверном варианте) или компьютер (в файловом).
  • Обратитесь в поддержку , если проблема повторяется регулярно — это может указывать на ошибки в конфигурации.

8. Настройка автоматического контроля активности

Чтобы не проверять пользователей вручную, настройте автоматический мониторинг:

Способ 1: Регламентное задание в 1С

  • Создайте обработку, которая будет отправлять отчёт об активных пользователях на email.
  • Настройте её выполнение по расписанию через Администрирование → Регламентные задания.

Способ 2: Внешние системы мониторинга

  • Используйте Zabbix или Nagios для отслеживания нагрузки на сервер .
  • Настройте оповещения в Telegram или Slack при превышении порога активных сессий.

Способ 3: Логирование в SQL

  • Создайте триггер на системных таблицах MS SQL Server, который будет записывать все подключения в отдельную таблицу.
  • Настройте SQL Agent для отправки сводки раз в час.
💡

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

⚠️ Внимание: При настройке автоматического контроля учитывайте законодательные ограничения. В некоторых странах фиксация действий пользователей без их согласия может нарушать законы о защите персональных данных (например, ГДПР в ЕС или 152-ФЗ в России). Всегда уведомляйте сотрудников о мониторинге!

——— ——— ———

FAQ: Частые вопросы по контролю пользователей в 1С ЗУП

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

Да, но способы зависят от варианта работы:

  • В клиент-серверном варианте это видно в Консоли кластера (колонка Текущая операция) или через SQL-запрос.
  • В файловом варианте такую детализацию дают только внешние обработки (например, «Монитор активных пользователей»).
Почему в отчёте «Активные пользователи» не показываются все сессии?

Возможные причины:

  • У вас недостаточно прав (нужна роль Администратор).
  • Пользователь подключён через OLE или COM (такие сессии видны только в Консоли кластера или через SQL).
  • В файловой базе сессия «зависла» на уровне ОС (проверьте через 1Cv8.exe /IBConnectionTest).
Как запретить пользователю работать в базе после 18:00?

Настройте расписание доступа:

  1. Откройте справочник Пользователи (Администрирование → Настройка пользователей и прав).
  2. Выберите пользователя → вкладка Расписание.
  3. Установите ограничение по времени (например, с 9:00 до 18:00).

Альтернатива: создайте регламентное задание, которое будет автоматически отключать пользователей после 18:00.

Можно ли узнать, с какого компьютера подключён пользователь?

Да, эта информация доступна:

  • В отчёте Активные пользователи (колонка Компьютер).
  • В Журнале регистрации (поле Компьютер).
  • В Консоли кластера (колонка Host или IP-адрес).

Если вместо имени компьютера отображается IP, проверьте настройки DNS в вашей сети.

Что делать, если пользователь заблокировал базу и её невозможно открыть?

Последовательность действий:

  1. Попробуйте завершить сессию через Консоль кластера или SQL.
  2. Если не помогает — перезапустите службу Агент сервера 1С:Предприятие 8.3.
  3. В крайнем случае перезагрузите сервер (в клиент-серверном варианте) или компьютер с файловой базой.
  4. После восстановления доступа проверьте базу на ошибки утилитой chdbfl.exe /R.

⚠️ Если проблема повторяется, обратитесь в поддержку — это может быть признаком повреждения базы.