|
|
|
Управлять кластером серверов 1с через API | ☑ | ||
|---|---|---|---|---|
|
0
Улугбек_
Собиров 21.10.24
✎
08:22
|
Коллеги добрый день!
Можно ли управлять (включить/отключить блокировку) кластер серверов 1с через API, либо SQL сервер? |
|||
|
1
Волшебник
21.10.24
✎
08:25
|
ищите RAC
|
|||
|
2
Dzenn
21.10.24
✎
10:23
|
(0) хороший вопрос, сейчас тебе скину свой код на 1с-исполнителе
|
|||
|
3
Dzenn
21.10.24
✎
10:28
|
Скрипт на 1с-исполнителе для управления сервером 1Сструктура Подключение
знч Сервер: Строка
знч ПользовательКластера: Строка
знч ПарольКластера: Строка
знч ИмяБазы: Строка
знч ПользовательБазы: Строка
знч ПарольПользователяБазы: Строка
знч ОтправитьПисьмо: Булево
;
метод Скрипт()
знч ИмяБазы: Строка = "Рабочая" // здесь указываем строку из ::::подключения:::: (ниже), для проверки поменять на Дев10 или добавить свою
знч ПодключениеКРабочей: Подключение = новый Подключение(
"sqlserv1","<здесь пользователь кластера>","<здесь пароль кластера>", "UT2013", "<здесь пользователь базы>",
"<здесь пароль базы>", Истина)
знч ПодключениеКДев10: Подключение = новый Подключение (
"dbs","","","dev_Zakirov_10","Закиров Дамир Тагирович",
"<здесь пароль базы>", Ложь)
пер Подключения: Соответствие<Строка, Подключение>
Подключения.Вставить("Рабочая", ПодключениеКРабочей) // ::::подключения::::
Подключения.Вставить("Дев10", ПодключениеКДев10)
ЗаблокироватьБазу(Подключения[ИмяБазы])
если Подключения[ИмяБазы].ОтправитьПисьмо
ОтправитьПисьмо(Подключения[ИмяБазы])
;
;
метод ЗаблокироватьБазу(Параметры: Подключение)
знч АдмС = новый АдминистрированиеСервераV8(Параметры.Сервер, 1545)
знч Кластеры = АдмС.ПолучитьКластеры()
для Кластер из Кластеры
Кластер.ВыполнитьАутентификацию(Параметры.ПользовательКластера, Параметры.ПарольКластера)
знч Базы = Кластер.ПолучитьИнфобазы()
для База из Базы
если База.Имя == Параметры.ИмяБазы
пер Инфобаза = База.ВыполнитьАутентификацию(Параметры.ПользовательБазы, Параметры.ПарольПользователяБазы)
ВключитьБлокировку(Инфобаза)
;
;
прервать
;
;
метод ВключитьБлокировку(Инфобаза: ИнфобазаV8)
знч ЧасовойПояс = новый ЧасовойПояс("UTC+3")
Инфобаза.ВремяНачалаБлокировки = ДатаВремя.Сейчас().НачалоДня().ДобавитьМинуты(570).ВМомент(ЧасовойПояс)
Инфобаза.ВремяОкончанияБлокировки = ДатаВремя.Сейчас().НачалоДня().ДобавитьМинуты(630).ВМомент(ЧасовойПояс)
Инфобаза.ВключенаБлокировкаНачалаСеансов = Истина
Инфобаза.Записать()
;
метод ОтправитьПисьмо(Параметры: Подключение)
знч Отправитель = "d.zakirov@bwell-swiss.com"
знч Получатели = "All@bwell-swiss.com"
знч Тема = "Обновление 1С УТ с 9.30 до 9.35"
знч ФайлШаблона = новый Файл(".\\inside\\Обновление в 9.30.html")
знч ЧтениеТекста = ФайлШаблона.ОткрытьПотокЧтения()
пер ТекстПисьма = ЧтениеТекста.ПрочитатьКакСтроку(Кодировка.Koi8r)
пер Лого = новый Файл(".\\inside\\bwell.png")
исп ПотокЛого = Лого.ОткрытьПотокЧтения()
пер Письмо = новый Письмо(Отправитель, Получатели, Тема)
Письмо.УстановитьЗаголовок("Content-Type", "text/html")
пер Вложение = Письмо.ПриложитьДанные(ПотокЛого, "bwell.png", "image/png", (новый Ууид()).ВСтроку(), Истина)
ТекстПисьма = ТекстПисьма.Заменить("{ИдентификаторВложения}", Вложение.Ид)
Письмо.УстановитьТекстКакСтроку(ТекстПисьма, ВидТекстаПисьма.Html)
пер Аутентификация = новый АутентификацияПочтыПоПаролю("d.zakirov@bwell-swiss.com", "<здесь пароль на почтовый ящик>")
пер ПараметрыПодключения = новый ПараметрыПодключенияSmtp("mail.am.local", 465, Аутентификация)
КлиентSmtp.Отправить(ПараметрыПодключения, Письмо)
Консоль.Записать(Параметры)
; |
|||
|
4
Dzenn
21.10.24
✎
10:26
|
Вот тебе код на 1С исполнителе. Он работает только при включённой службе RAC на сервере. Приспособлен под обновление в 9.30 утра текущего дня. При выполнении скрипта блокируется указанная база с 9.30 до 10.30 и отправляется письмо на ALL вида "планируется обновление, просьба завершить сеанс."
|
|||
|
5
Волшебник
21.10.24
✎
10:27
|
знч, пер, исп... 🤦
|
|||
|
6
shuhard
21.10.24
✎
10:28
|
(5) +1
мосгоржоптрикотаж =) |
|||
|
7
Dzenn
21.10.24
✎
10:31
|
(5) не понял, это эмоции на синтаксис исполнителя или на мой код?
|
|||
|
8
Волшебник
21.10.24
✎
10:39
|
(7) на синтаксис исполнителя
|
|||
|
9
Климов Сергей
21.10.24
✎
10:40
|
Напомнило JCL.
|
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |