Цитата |
---|
а по расписанию? я ухожу домой в 18.00, а отключать надо в 23.00 |
Как вариант!
Можно реализовать подобное используя стандартный функционал фоновых заданий. Только для клиент - серверного варианта соответственно.
Настроить вид задания "Произвольная обработка", указав расписание и имя выпоняемого метода, код которого заблаговременно нужно добавить в конфигурацию.
Код приблизительно такого содержания:
Код |
---|
Процедура ЗавершитьРаботуВсехПользователей() Экспорт
Пользователь=""; // указать пользователя
Пароль=""; // указать пароль
Попытка
СтрокаСоединения=СтрокаСоединенияИнформационнойБазы();
Сервер=НСтр(СтрокаСоединения,"Srvr");
База=НСтр(СтрокаСоединения,"Ref");
КОМ=Новый COMОбъект("V82.COMConnector");
Агент=КОМ.ConnectAgent(Сервер);
Кластеры=Агент.GetClusters();
Кластер=Кластеры.GetValue(0);
Агент.Authenticate(Кластер,"","");
РабочиеПроцессы=Агент.GetWorkingProcesses(Кластер);
Для Каждого Процесс Из РабочиеПроцессы Цикл
СтрокаСоединенияРП=Процесс.HostName+":"+Формат(Процесс.MainPort,"ЧГ=");
СоединениеРП=КОМ.ConnectWorkingProcess(СтрокаСоединенияРП);
СоединениеРП.AddAuthentication(Пользователь,Пароль);
ОписаниеИБ=СоединениеРП.CreateInfoBaseInfo();
ОписаниеИБ.Name=База;
Соединения=СоединениеРП.GetInfoBaseConnections(ОписаниеИБ);
Для Каждого Соединение Из Соединения Цикл
СоединениеРП.Disconnect(Соединение);
КонецЦикла;
КонецЦикла;
КОМ=Неопределено;
Исключение
КонецПопытки;
КонецПроцедуры |
Код как пример убивает все соединения(текущее соединение, конфигуратор и фоновые задания в том числе)! Используй условия в цикле для исключения того, что "убивать" не нужно методом Disconnect(Соединение)...