0

Процедура ПодключитьОбработчикОповещения()

Подключает указанную процедуру в качестве глобального обработчика оповещений

Синтаксис

Процедура ПодключитьОбработчикОповещения() имеет следующий синтаксис:

ПодключитьОбработчикОповещения(ИмяПроцедуры)

А также альтернативный англоязычный синтаксис:

AttachNotificationHandler(ProcName)

Параметры

Описание параметров процедуры ПодключитьОбработчикОповещения():

Имя параметра Тип Описание
ИмяПроцедуры Строка Имя экспортируемой процедуры модуля приложения или общего глобального модуля. Процедура должна располагаться на клиенте.
Жирным шрифтом выделены обязательные параметры

Описание

Процедура ПодключитьОбработчикОповещения() подключает вызов указанной процедуры модуля приложения или глобального общего модуля в качестве глобального обработчика оповещений, генерируемых при вызове процедуры Оповестить(). Процедура должна быть экспортируемой (объявлена с ключевым словом Экспорт) и иметь три предопределенных параметра: <ИмяСобытия>, <Параметр> и <Источник>. Если одно из этих требований не будет выполняться, будет вызвана ошибка времени исполнения Недопустимое значение параметра (параметр номер ‘1’)

Внимание! Вызов обработчика будет продолжаться, пока программа не будет закрыта или пока указанный обработчик не будет отключен процедурой ОтключитьОбработчикОповещения().

Доступность

Тонкий клиент, веб-клиент, мобильный клиент, толстый клиент, мобильное приложение(клиент).

Пример использования

Пример кода с использованием процедуры ПодключитьОбработчикОповещения():

//ГЛОБАЛЬНЫЙ МОДУЛЬ УПРАВЛЯЕМОГО ПРИЛОЖЕНИЯ

//контроль активности пользователя
Перем глПоследнееДействие;

Процедура ПриНачалеРаботыСистемы()
    
    ПодключитьОбработчикОповещения("глОбработкаОповещения");
    ПодключитьОбработчикОжидания("глОбработкаОжидания", 60);
    
КонецПроцедуры

//Глобальный обработчик оповещения
//
// Параметры:
//  ИмяСобытия     - Строка - представление события
//  Параметр     - Произвольный    - произвольный параметр
//  Источник     - Форма, УправляемаяФорма, ФормаКлиентскогоПриложения - форма, из которой поступило событие
//
Процедура глОбработкаОповещения(ИмяСобытия, Параметр, Источник) Экспорт 
    
    глПоследнееДействие = ТекущаяДата();
        
    Сообщить(СтрШаблон("Событие <%1> из формы <%2>", ИмяСобытия, Источник.Заголовок));
    
КонецПроцедуры//глОбработкаОповещения()

//глобальный обработчик ожидания
Процедура глОбработкаОжидания() Экспорт
    
    Если ТекущаяДата() - глПоследнееДействие > 60 Тогда
        //если пользователь не активен, попытаемся заблокировать программу
        Ответ = Вопрос("Вы не подавали признаков активности. Через минуту программа будет заблокирована. Для разблокировки потребуется ввести пароль...", РежимДиалогаВопрос.ОКОтмена, 60);
        Если Ответ = КодВозвратаДиалога.Отмена Тогда
            //продлим время работы
            глПоследнееДействие = ТекущаяДата();
        Иначе
            //ОК или таймаут
            ЗаблокироватьРаботуПользователя();    
        КонецЕсли;
    КонецЕсли;
    
КонецПроцедуры

глПоследнееДействие = ТекущаяДата();

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *