Имя: Пароль:
1C
1С v8
Блокировка регламентных заданий
,
0 Лодырь
 
17.02.15
13:35
Никто абсолютно случайно не знает способ заблокировать регламентные задания в ИБ кроме как руками ткнуть галку в свойствах базы на сервере? Документация на этот счет вроде как молчит, но может быть кто-то уже решал данный ребус?
1 Goggy
 
17.02.15
13:37
Обработка на ИТС "консоль заданий".
2 Goggy
 
17.02.15
13:38
Лодырь такой лодырь...
3 Shrek_yar
 
17.02.15
13:40
консоль заданий - не блокирует задания
4 ssh2QQ6
 
17.02.15
13:50
Как то на скорую руку делал обработку для снятия/установки/просмотра текущего состояния блокировки соединений.

Код :

    ИмяБазы = "...";
    // ---- Инцилизиурем константы ----
    
    ИмяСервера = "имя:порт";        // адрес 1С сервер
    АдминКластера = "...";
    ПарольАдминаКластера = ПарольАдмКластера;
    Админ1С = "...";     // пользователь с полными правами
    ПарольАдмина1С = ПарольАдмБазы;        // пароль админа 1С
    
    // ---- Отписываемся от регламентых заданий ----
    Соединение = Новый COMОбъект("V82.COMConnector");               // Соединились с 1С
    Попытка
        СоединениеАгент = Соединение.ConnectAgent(ИмяСервера);      // Соединились с 1С Агентом
        Кластеры = СоединениеАгент.GetClusters();                   // Получитли массив кластеров (COMSafeArray)
    Исключение
        #Если НаКлиенте тогда
            Сообщить("Ошибка соединения с COM сервером: " + ОписаниеОшибки());
        #КонецЕсли
        Возврат;
    КонецПопытки;
    
    КоличествоКластеров = Кластеры.GetLength(0);
    Если КоличествоКластеров < 1 тогда
        #Если НаКлиенте тогда
            Сообщить("Не найден кластер на сервере " + ИмяСервера);
        #КонецЕсли
        Возврат;
    КонецЕсли;
    
    РабочийКластер = Кластеры.GetValue(0);
    Попытка
        // Авторизируемся на кластере (Кластер,Имя,Пароль)
        СоединениеАгент.Authenticate(РабочийКластер, АдминКластера, ПарольАдминаКластера);
    Исключение
        #Если НаКлиенте тогда
            Сообщить("Ошибка авторизации: " + ОписаниеОшибки());
        #КонецЕсли
        Возврат;
    КонецПопытки;
    
    // Подключаемся к рабочему процессу
    РабочийПроцесс = СоединениеАгент.GetWorkingProcesses(РабочийКластер).GetValue(0);
    Порт = СтрЗаменить(Строка(РабочийПроцесс.MainPort),Символы.НПП,"");  // убиваем непереносимые пробелы
    Сообщить(Порт);
    СтрокаПодлючения = РабочийПроцесс.HostName + ":" + Порт;
    СоединениеСРабочимПроцессом = Соединение.ConnectWorkingProcess(СтрокаПодлючения);
    СоединениеСРабочимПроцессом.AddAuthentication(Админ1С,ПарольАдмина1С);
    
    // Ищем текущую базу данных
    МассивБаз = СоединениеСРабочимПроцессом.GetInfoBases();
    БазаНайдена = Ложь;
    Для каждого РабочаяБаза из МассивБаз цикл
        Если НРег(РабочаяБаза.Name) = НРег(ИмяБазы) Тогда
            БазаНайдена = Истина;
            Прервать;
        КонецЕсли;
    КонецЦикла;
    
    Если Не БазаНайдена тогда
        #Если НаКлиенте тогда
            Сообщить("База (" + ИмяБазы + ") не найдена на сервере " + ИмяСервера);
        #КонецЕсли
        Возврат;
    КонецЕсли;
        
    Если Блокировка = 0 Тогда
        Сообщить("Текущее состояние: Блокировка " + РабочаяБаза.ScheduledJobsDenied);
    ИначеЕсли Блокировка = 1 Тогда
        РабочаяБаза.ScheduledJobsDenied = Ложь;   // Снимаем Блокировку выполнения регламентных заданий
        СоединениеСРабочимПроцессом.UpdateInfoBase(РабочаяБаза);
    ИначеЕсли Блокировка = 2 Тогда
        РабочаяБаза.ScheduledJobsDenied = Истина;   // Блокируем выполнения регламентных заданий
        СоединениеСРабочимПроцессом.UpdateInfoBase(РабочаяБаза);
    КонецЕсли;
5 ssh2QQ6
 
17.02.15
13:51
Переменная Блокировка - на форме переключатель - что делать - снять/установить/посмотреть
6 Лодырь
 
17.02.15
13:52
(4) Похоже на правду. Спасиб. Не добрался в СП до ScheduledJobsDenied
7 Goggy
 
17.02.15
14:26
(3) Не ври людям.
8 Лодырь
 
18.02.15
12:06
(7) Отключение использования регламентного задания не есть блокировка регламентных заданий. Учись уже уважать окружающих.
9 Goggy
 
18.02.15
12:20
(8) Простая игра слов, результат один.

Моё уважение надо заслужить, либо убедить меня в том что это будет заслуженно. Можете считать меня неприятным человеком или социопатом, ваше право. А если человек меня заинтересует, то и я постараюсь его убедить в том, что достоин уважения, а пока...
10 Лодырь
 
18.02.15
13:48
(9) Результат разный. В твоем случае надо запоминать состояние регл.заданий чтобы потом восстановить его, вдобавок ничто не помешает кому-нибудь стартовать их. А вот блокировка избавляет нас от геморроя с запоминанием и гарантирует отсутствие заданий.
Пользователь не знает, чего он хочет, пока не увидит то, что он получил. Эдвард Йодан