Имя: Пароль:
1C
1С v8
Автоматическая "выгонялка" пользователей
0 Штурман
 
12.07.12
09:56
Посоветуйте скрипт или батник, которым можно выгонять пользователей из базы в определенное время, например ночью.

База крутится на SQL Server.
1 КонецЕсли
 
12.07.12
10:17
vbs скрипт:

'имя пользователя 1С:Предприятия
UserName = "Пупкин В.В."

'пароль пользователя 1С:Предприятия
UserPass = "12345"

'имя сервера 1С
ServerName  = "server1c"
BaseName    = "base1c"

'Удаление всех соединений заданной ИБ сервера 1С
Dim connector
Set connector = CreateObject("v8.COMConnector")

Dim server
Set server = connector.ConnectServer(ServerName)
server.AddAuthentication UserName, UserPass
Dim ibDesc
Set ibDesc = server.CreateInfoBaseInfo()
ibDesc.Name = BaseName
Dim connections
connections = server.GetIBConnections(ibDesc)
Dim i
Dim connection
For i = LBound(connections) To UBound(connections)
   set connection = connections(i)
   server.Disconnect connection
Next


Делаещь такой файлик текстовый с расширением  vbs. В планировщик вставляешь его запуск.
з.ы. не советую так просто его запускать на рабочую базу :)
2 Штурман
 
12.07.12
10:22
(1) что-то не понял, почему его нельзя запускать на рабочую базу?
3 le_
 
12.07.12
10:22
(2) Если нельзя, но очень хочется, то можно.
4 Штурман
 
12.07.12
10:23
(3) мне рабочее решение, которое бы без опасений можно было бы запускать на рабочей базе
5 Штурман
 
12.07.12
10:24
у кластера серверов 1с кстати нет никаких консольных команд для удаления сеансов?
6 Прохожий
 
12.07.12
10:28
Почему никто не изобрел автоматическую подгонялку: пусть считает число кликов мыши и число нажатий клавиш. И пишет:" Ваша кликоотдача за последние 5 минут снизилась на ХХХ раз (УУУ %) и кнопкошлепанье возрасло на ААА нажатий (ВВВ %). Большой брат недоумевает!"
7 Штурман
 
12.07.12
10:29
в общем может использовать обработку "установка блокировки соединений с информационной базой" ?
8 чувак
 
12.07.12
10:31
А разве у СКЛ нету такого?
9 Штурман
 
12.07.12
10:31
кстати, она чета не работает, пишет:

"Не удалось подключиться к кластеру серверов
Ошибка при вызове метода контекста (ConnectAgent)"

что это такое?

на серванте крутится два сервера 1с, один 8.1, другой 8.2
порт второго - 1641

даже в настройках указал порт - все равно тот же результат
10 Eugene_life
 
12.07.12
10:32
(7) По-моему, на запущенные регламентные задачи, на сеансы с полными правами и на сеансы с настройкой "спрашивать при закрытии программы" блокировка не подействует. Все равно нужно обходить процессы 1С и отрубать их.
11 НайдуУбъю
 
12.07.12
10:33
а чем ПодключитьОбработчикОжидания не устраивает?
12 КонецЕсли
 
12.07.12
10:34
(2) Потому что выкинет всех работающих нафиг и не спросит.
(9) Скрипт для 8.1. Юзернейм должен быть с правами администратора.
13 Serg_1960
 
12.07.12
10:39
Перезапуск 1С:Сервера ночью - вот решение проблемы. Если, конечно, у вас пользователи по ночам не работают :)

PS: типовые методы (и не стандартные решения) не сработают с зависшим соединением. Или с соединением,восстановление которого происходит по "инициативе" сервера БД.
14 Штурман
 
12.07.12
14:01
(13) а как перезапустить сервер 1с?

просто перезапустить службу сервер 1с в виндовс?