Имя: Пароль:
1C
1С v8
Зависшие сеансы
0 maxab72
 
15.12.25
11:37
Где-то с 8.3.24, или чуть раньше, появилась проблема с отключением зависших сеансов пользователей через консоль. Некоторых пользователей не удается отключить (запустил огромный отчет с выборкой за последние 100 лет и сам завис и всех тормозит). То есть его отключаешь через консоль, обновляешь список - а он снова там с прежним номеров сеанса и продолжает висеть. так как это пользователи не терминальные - добраться до их рабочего стола тоже есть сложности (а и через диспетчер задач не всегда удается отрубить сеанс, он продолжает крутиться на сервере 1с). Есть ли "мягкий" способ отключить таких, без рестарта службы сервера 1с?
1 Fish
 
гуру
15.12.25
11:42
(0) Есть, конечно. Рубануть соединение на SQL или Postgree.
2 maxab72
 
15.12.25
11:49
(1) точно, про то, что SQL существует я как-то позабыл...
3 Прохожий
 
15.12.25
13:25
А в общем модуле написать
Процедура ЗакрытиеСеансов(ИмяПользователя = Неопределено, backgroundjob = Ложь) Экспорт

Причем тут SQL если вопрос про сервер 1С?
4 maxab72
 
15.12.25
13:30
(3) если сеанс завис, такая процедура не помогает. Она есть. А если в SQL рубануть связь, то зависший сеанс, который все время теребит БД, пытаясь что-то там извлечь для отчета, отвалится сам.
5 H A D G E H O G s
 
15.12.25
13:36
(4) Задание со звездочкой - написать код, который убьет сеанс автоматически.

Код смотрит сеансы пользователей, получает его SQL SPID, и, через ВнешниеИсточникиДанных запускает хранимку
с kill spid