Глобальное клиентское событие

Элемент проекта вида ГлобальноеКлиентскоеСобытие описывает одно глобальное событие.

Глобальное событие — это событие, описанное на уровне подсистемы (пакета). Это событие не связано с экземпляром какого-либо типа.

Подписаться на такое событие можно с помощью метода имя-глобального-клиентского-события.ПодключитьОбработчик().

Вызвать такое событие можно с помощью метода имя-глобального-клиентского-события.Оповестить().

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

Например, в приложении может существовать справочник Заказы и форма Дашборд, которая показывает в удобном виде обобщенную информацию по заказам. Хочется, чтобы при изменении заказа (или при создании нового заказа) информация на дашборде автоматически пересчитывалась.

Для этого можно создать глобальное клиентское событие с именем ЗаказЗаписан и одним параметром с именем Заказ типа Заказы.Ссылка. В этом параметре будет передаваться измененный или новый заказ.

ВидЭлемента: ГлобальноеКлиентскоеСобытие
Ид: aa7865c7-581e-4049-a71a-6dff0049ad1e
ОбластьВидимости: ВПодсистеме
Имя: ЗаказЗаписан
Параметры:
    -
        Имя: Заказ
        Тип: Заказы.Ссылка

В модуле формы Дашборд.xbsl можно подписаться на это событие:

@НаКлиенте
метод Алгоритм()
    ЗаказЗаписан.ПодключитьОбработчик(&ОбновитьОтчет)
;

@НаСервере @ДоступноСКлиента
статический метод ОбновитьОтчет(ИзмененныйЗаказ: Заказы.Ссылка)
    // Алгоритм обновления данных.
;

А в модуле формы объекта справочника ЗаказыФормаОбъекта.xbsl можно вызвать данное событие:

метод ЗаписатьИЗакрыть(Источник: Кнопка, Событие: СобытиеПриНажатии)
    Записать()
    ЗаказЗаписан.Оповестить(КлючОбъекта как Заказы.Ссылка)  
    Закрыть()
;