Проверка флага "Блокировка регламентных заданий включена"(ScheduledJobsDenied) в свойствах баз на Кластере серверов 1С82

25.07.13

Разработка - Инструментарий разработчика

Автоматическая проверка свойства "Блокировка регламентных заданий включена" (ScheduledJobsDenied) у указанных баз на кластере серверов 1С 82, логирование и рассылка результатов проверки

Скачать исходный код

Наименование Файл Версия Размер
CheckScheduledJobsDeniedOnServer.zip
.zip 194,01Kb
14
.zip 194,01Kb 14 Скачать
CheckScheduledJobsDeniedOnServer_1.01.zip
.zip 194,59Kb
40
.zip 194,59Kb 40 Скачать

25.07.2013

Версия 1.01 - исправлены выявленые ошибки

- если в кластере добавлены резервные процессы, то попытка подключиться и прочитать свойства баз заканчивалась ошибкой, сейчас добавлена проверка на свойство процесса Use = 1 (т.е рабочий)

- прочие недочеты

 

Интро:

Однажды так случилось, что в свойствах боевой базы установили флаг "Блокировать фоновые задания", и очень важный регламент не выполнился и все получили по шапке. Собственно тогда и встал вопрос, как так сделать, что бы каждый вечер мониторилось такое свойство и результат рапортовался на e-mail. Надо - сделаем!

 

Сразу скажу, что идея не нова, и есть ранее созданные похожие публикации

вот сходу нашел такие варианты:

Скрипт на VBS, который проверяет работают ли регламентные/фоновые задания

и вот, уже на 1С, но с вполне конкретной целью "наоборот"

Отключение регламентных заданий в копии базы

Нюансы:

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

В кластере серверов могут быть несколько баз, и у этих базах могут быть разные пользователи с ролью "Администратор", и нужно выполнить метод AddAuthentication([пользователь БД],[пароль пользователя БД]) для каждого такого пользователя.

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

Подход:

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

Создается объект "V82.ComConnector", подымается коннект к кластеру серверов и выполняет нужные нам действия. Все шаги логирует и высылает на заданные e-mail адреса, и так же отдельно сохраняет log файл.

Все нужные нам методы и свойства описаны в синтаксис помощнике 1С Предприятия, в разделе "Средства интеграции и администрироования" - "Менеджер COM-Соединений" 

По порядку:

  1. создать объект V82.COMConnector
  2. подключиться кластеру серверов connectAgent([строка подключения кластера]) 
  3. получить кластреы GetClusters()
  4. залогиниться под Администратором кластера Authenticate([cluster],[админ крастера],[пароль админа кластера] )
  5. получить рабочие процессы GetWorkingProcesses([cluster])
  6. подключиться к рабочему процессу ConnectWorkingProcess([строка подключения к рабочему процессу])
  7. залогиниться под всеми Администраторами AddAuthentication([пользователь БД],[пароль пользователя БД])
  8. получаем список баз GetInfoBases()
  9. проверяем свойство базы ScheduledJobsDenied

Что бы получить свойства информационной базы, неодбходимо залогиниться под пользователем этой базы с ролью Администратор. Поэтмоу существует возможность указать различные варианты таких пользователей, что бы в цикле выполнить метод рабочего процесса AddAuthentication(,), тогда мы сможем прочитать свойства всех баз.

Так же можно указать несколько адресов для рассылки лога выполненой операции

  


Иерархия файлов параметров


.\config
.\config\srv.txt
.\config\srvMail.txt
.\config\auth.txt
.\config\emails.txt
.\config\base.txt


* - Обязательные параметры

1. .\config\srv.txt
Файл параметров подключения к серверу 1С
*Первая строка: *[IPадрес/Имя менеджера кластера серверов],*[порт подключения к кластеру серверов]
Вторая строка:    [админ кластера],[пароль админа кластера]

2. .\config\srvMail.txt
Файл содержит описание подключения к почтовому серверу
*Первая строка: *[ящик от чьего имени отсылать],*[адрес почтового сервера],[порт, если не указано то = 25]

3. .\config\auth.txt
Файл содержит параметры аутентификации пользователей баз с ролью Администратор
[user1],[pass1]
[user2],[pass2]
….
[userN],[passN]

4. .\config\emails.txt
Файл содержит строки с e-mail адресами для рассылки
[email1]
[email2]

[emailN]

5. .\config\base.txt
Файл содержит строки с именами баз для проверки установленной блокировки, если файл пустой,
то проверяются все базы
[base1]
[base2]

[baseN]


 

Получилась полноценная мини программа на VB, естественно с говнокодом внутри, но работающая исправно. Так же во вложении исходный код, который можно подредактировать под себя.

Писалось на MsVS2012

Минусы:

Все параметры хранятся в простых *.txt  файлах, и поэтому это не очень безопасно. Но если у вас "всякие нехорошие"  не имеют доступ к серверу, то это не сильно страшно.

Но опять же, все на ваше усмотрение.

 

прошу критику и предложения в комменты или личку.

См. также

Infostart Toolkit: Инструменты разработчика 1С 8.3 на управляемых формах

Инструментарий разработчика Роли и права Запросы СКД Платформа 1С v8.3 Управляемые формы Запросы Система компоновки данных Конфигурации 1cv8 Платные (руб)

Набор инструментов программиста и специалиста 1С для всех конфигураций на управляемых формах. В состав входят инструменты: Консоль запросов, Консоль СКД, Консоль кода, Редактор объекта, Анализ прав доступа, Метаданные, Поиск ссылок, Сравнение объектов, Все функции, Подписки на события и др. Редактор запросов и кода с раскраской и контекстной подсказкой. Доработанный конструктор запросов тонкого клиента. Продукт хорошо оптимизирован и обладает самым широким функционалом среди всех инструментов, представленных на рынке.

10000 руб.

02.09.2020    125069    683    389    

732

Infostart PrintWizard - создание и редактирование печатных форм в 1С 8.3

Пакетная печать Печатные формы Инструментарий разработчика Платформа 1С v8.3 Запросы 1С:Зарплата и кадры бюджетного учреждения 1С:Конвертация данных 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 Платные (руб)

Инструмент, позволяющий абсолютно по-новому взглянуть на процесс разработки печатных форм. Благодаря конструктору можно значительно снизить затраты времени на разработку печатных форм, повысить качество и "прозрачность" разработки, а также навести порядок в многообразии корпоративных печатных форм.

18000 руб.

06.10.2023    7796    24    6    

42

Infostart УДиФ: Управление данными и формами 1С

Инструменты администратора БД Инструментарий разработчика Роли и права Платформа 1С v8.3 Конфигурации 1cv8 Россия Платные (руб)

Расширение позволяет без изменения кода конфигурации выполнять проверки при вводе данных, скрывать от пользователя недоступные ему данные, выполнять код в обработчиках. Не изменяет данные конфигурации, легко устанавливается практически на любую конфигурацию на управляемых формах.

10000 руб.

10.11.2023    4297    12    2    

36

SALE! %

PowerTools

Инструментарий разработчика Инструменты администратора БД Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Россия Платные (руб)

Универсальный инструмент программиста для администрирования конфигураций. Сборник наиболее часто используемых обработок под единым интерфейсом.

3600 2280 руб.

14.01.2013    178680    1084    0    

862

Многопоточность. Универсальный «Менеджер потоков» 2.1

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Россия Платные (руб)

Восстановление партий или взаиморасчетов, расчет зарплаты, пакетное формирование документов или отчетов - теперь все это стало доступнее. * Есть желание повысить скорость работы медленных алгоритмов! Но... * Нет времени думать о реализации многопоточности? * о запуске и остановке потоков? * о поддержании потоков в рабочем состоянии? * о передаче данных в потоки и как получить ответ из потока? * об организации последовательности? Тогда ЭТО - то что надо!!!

5000 руб.

07.02.2018    99650    239    97    

298

[ЕХТ] Фреймворк для Расширений 1С

Инструментарий разработчика Платформа 1С v8.3 Управляемые формы Платные (руб)

"Фреймворк для Расширений 1С" это универсальное и многофункциональное решение, упрощающее разработку и поддержку создаваемых Расширений. Поставляется в виде комплекта из нескольких Расширений с открытым исходным кодом. Работает в любых Конфигурациях в режиме Управляемого приложения с режимом совместимости 8.3.12 и выше без необходимости внесения изменений в Конфигурацию.

3000 руб.

27.08.2019    18408    6    8    

40

Выполнение произвольного кода или запроса с параметрами через Web-сервис (замена COM-подключений)

Инструментарий разработчика Обмен между базами 1C Платформа 1С v8.3 Платные (руб)

В процессе работы в 1С часто возникает потребность получить данные из другой базы.  Обычно это делается через COM-соединение, и время выполнения запроса при этом оставляет желать лучшего. В данной публикации представлено универсальное решение, позволяющее практически моментально выполнить произвольный код или запрос с параметрами в другой информационной базе через Web-сервис.

2400 руб.

24.09.2019    23864    16    15    

33

1С HTML Шаблоны / HTML Templates

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Платные (руб)

Быстрая и удобная обработка для работы с шаблонами HTML. Позволяет легко и быстро формировать код HTML.

2040 руб.

27.12.2017    28331    3    10    

16
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. mixperm 67 01.12.14 09:16 Сейчас в теме
Нужно переделать под 83 коннектор и добавить опцию включить или отключить блокировку регламентных заданий на все базы. у меня их 150+ штук
корум; +1 Ответить
2. нормальный такой 93 01.12.14 13:39 Сейчас в теме
(1) mixperm, привет.
прикольно, попробую с 83.

можешь в личку стукнуть, спишемся там.
3. st.gaevoy 26 27.09.17 10:07 Сейчас в теме
4. нормальный такой 93 04.10.17 13:32 Сейчас в теме
5. konstantinvasenev 96 09.08.22 13:07 Сейчас в теме
В лог выдает ошибку Object reference not set to an instance of an object.Подскажите какие нюансы необходимо учесть перед запуском скрипта?
Оставьте свое сообщение