Серверные оповещения
НовоеСерверноеОповещение
Описание, пример вызова
// Для процедуры ПриДобавленииСерверныхОповещений общего модуля ОбщегоНазначенияПереопределяемый.//// Параметры:// Имя - Строка - имя оповещения, подходящее для имени свойства структуры.//// Возвращаемое значение:// Структура:// * Имя - Строка - имя оповещения.//// * ИмяМодуляОтправки - Строка - имя серверного общего модуля, например, "СоединенияИБ",// содержащего экспортную процедуру ПриОтправкеСерверногоОповещения.// Вызов процедуры выполняется в привилегированном режиме.// Смотри пример в общем модуле СтандартныеПодсистемыСервер.// Может быть не заполнено. В этом случае вызываться не будет,// например, используется для отправки сообщений об изменении// настроек функциональных опций в момент изменения их констант,// вместо отслеживания изменений в регламентом задании.//// * ИмяМодуляПолучения - Строка - имя клиентского общего модуля, например, "СоединенияИБКлиент",// содержащего экспортную процедуру ПриПолученииСерверногоОповещения.// Смотри пример в общем модуле СтандартныеПодсистемыКлиент.//// * Параметры - Произвольный - любое сериализуемое значение, которое нужно передать// в процедуру ПриОтправкеСерверногоОповещения в качестве параметров.// Должно быть как можно меньшего размера в сериализованном виде.// Например, описание метаданных и расширений сеанса, для вычисления// добавленных и удаленных расширений и исправлений в регламентном// задании при вызове ПриОтправкеСерверногоОповещения, и отправке// оповещения с вычисленными отличиями соответствующим сеансам.//// * ПериодПроверки - Число - количество секунд, через которое требуется// вызывать ПриОтправкеСерверногоОповещения для проверки// состояния сервера и отправки оповещения, если требуется.// Начальное значение 20 минут.// Если указано время меньше 1 мин, тогда будет 1 мин.// Следует учитывать, что в модели сервиса реальный минимальный// период может быть значительно больше и нестабильным: 5-10 минут.////Функция НовоеСерверноеОповещение(Имя) Экспорт
Пример вызова
Результат = СерверныеОповещения.НовоеСерверноеОповещение(Имя)
ОтправитьСерверноеОповещение
Описание, пример вызова
// Добавляет серверное оповещение в очередь для доставки на клиент.// Оповещение доставляется через систему взаимодействия,// либо забирается в рамках общего серверного вызова.//// Параметры:// ИмяОповещения - Строка - смотри НовоеСерверноеОповещение.Имя.//// Результат - Произвольный - произвольное сериализуемое значение,// которое будет отправлено в составе оповещения на клиент// (должны быть как можно меньшего размера, желательно не более 1 Кб).//// Адресаты - Неопределено - все пользователи (и соответственно все сеансы).// Если указано незаполненное соответствие, тогда возврат.// - Соответствие из КлючИЗначение:// * Ключ - УникальныйИдентификатор - идентификатор пользователя ИБ.// * Значение - Массив из см. СерверныеОповещения.КлючСеанса//// ОтправитьСразу - Булево - если Истина, попытаться сразу отправить сообщение// через систему взаимодействия перед добавлением в очередь.// Отправка сразу не допускается из обработчиков ПриОтправкеСерверногоОповещения.// Следует учесть (особенно при вызове в транзакции), что неудачное обращение// к системе взаимодействия может занимать (3-5 сек)*2, а удачное не менее (50 мс)*2.//Процедура ОтправитьСерверноеОповещение(ИмяОповещения, Результат, Адресаты, ОтправитьСразу = Ложь) Экспорт
Пример вызова
СерверныеОповещения.ОтправитьСерверноеОповещение(ИмяОповещения, Результат, Адресаты, ОтправитьСразу);
ОбработатьОшибку
Описание, пример вызова
// Регистрирует ошибку в журнале регистрации, пойманную в обработчиках события// ПриПериодическомПолученииДанныхКлиентаНаСервере.//// Параметры:// ИнформацияОбОшибке - ИнформацияОбОшибке//// Пример:// МоментНачала = ТекущаяУниверсальнаяДатаВМиллисекундах();// Попытка// Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ЦентрМониторинга") Тогда// МодульЦентрМониторингаСлужебный = ОбщегоНазначения.ОбщийМодуль("ЦентрМониторингаСлужебный");// МодульЦентрМониторингаСлужебный.ПриПериодическомПолученииДанныхКлиентаНаСервере(Параметры, Результаты);// КонецЕсли;// Исключение// СерверныеОповещения.ОбработатьОшибку(ИнформацияОбОшибке());// КонецПопытки;// СерверныеОповещения.ДобавитьПоказатель(Результаты, МоментНачала,// "ЦентрМониторингаСлужебный.ПриПериодическомПолученииДанныхКлиентаНаСервере");//Процедура ОбработатьОшибку(ИнформацияОбОшибке) Экспорт
Пример вызова
СерверныеОповещения.ОбработатьОшибку(ИнформацияОбОшибке)
ДобавитьПоказатель
Описание, пример вызова
// Добавляет показатель производительности в обработчиках события// ПриПериодическомПолученииДанныхКлиентаНаСервере.//// Параметры:// Результаты - см. ОбщегоНазначенияПереопределяемый.ПриПериодическомПолученииДанныхКлиентаНаСервере.Результаты// МоментНачала - Число - ТекущаяУниверсальнаяДатаВМиллисекундах перед вызовом процедуры.// ИмяПроцедуры - Строка - полное имя вызываемой процедуры//// Пример:// МоментНачала = ТекущаяУниверсальнаяДатаВМиллисекундах();// Попытка// Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ЦентрМониторинга") Тогда// МодульЦентрМониторингаСлужебный = ОбщегоНазначения.ОбщийМодуль("ЦентрМониторингаСлужебный");// МодульЦентрМониторингаСлужебный.ПриПериодическомПолученииДанныхКлиентаНаСервере(Параметры, Результаты);// КонецЕсли;// Исключение// СерверныеОповещения.ОбработатьОшибку(ИнформацияОбОшибке());// КонецПопытки;// СерверныеОповещения.ДобавитьПоказатель(Результаты, МоментНачала,// "ЦентрМониторингаСлужебный.ПриПериодическомПолученииДанныхКлиентаНаСервере");//Процедура ДобавитьПоказатель(Результаты, МоментНачала, ИмяПроцедуры) Экспорт
Пример вызова
СерверныеОповещения.ДобавитьПоказатель(Результаты, МоментНачала, ИмяПроцедуры)
© 2024, ООО 1С-Софт
Все права защищены. Эта программа и сопроводительные материалы предоставляются
в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0).