Обработка события от внешнего компонента.
Синтаксис
ВнешнееСобытие(<Источник>, <Событие>, <Данные>)Полное описание, параметры и ограничения
ФормаКлиентскогоПриложения.ВнешнееСобытие (ClientApplicationForm.ExternalEvent)
ФормаКлиентскогоПриложения (ClientApplicationForm)
ВнешнееСобытие (ExternalEvent)
Доступен, начиная с версии 8.2.
Синтаксис:
ВнешнееСобытие(<Источник>, <Событие>, <Данные>)
Параметры:
<Источник>
Тип: Строка.
Источник внешнего события.
<Событие>
Тип: Строка.
Наименование события.
<Данные>
Тип: Строка.
Данные для события.
Описание:
Обработка события от внешнего компонента.
Доступность:
Тонкий клиент, веб-клиент, мобильный клиент, толстый клиент, мобильное приложение (клиент).
Примечание:
Обработка следующего события возможна только после завершения обработки текущего события.
Использование в версии:
Доступен, начиная с версии 8.2.
Методическая информация
Практические примеры
ВнешнееСобытие: собственная компонента книг
Точная фаза и модуль обработчика отделены от загрузки компоненты, сетевой интеграции и бизнес-записи.
Где и как запускать
Модуль собственной управляемой формы, клиентское событие.
Подготовка
Редкий событийный API: собственная доверенная Native API-компонента УчебнаяКомпонента, заранее подключённая штатно в своей учебной базе. Компонента действительно должна уметь посылать внешние события; DLL и её C++-реализация этим примером не создаются.
Явный собственный контракт компоненты: Источник=УчебнаяКомпонента, Событие=КодКниги, строка Данные=BOOK-001. Имя источника задаёт сама компонента; оно не обязано автоматически совпадать со вторым аргументом ПодключитьВнешнююКомпоненту.
Обработчик формы и обработчик приложения получают одно событие на разных фазах. Если изучаете оба, оставьте бизнес-обработку только в одном месте: формы вызываются раньше общего обработчика. Пример не выполняет строку Данные как BSL.
BSL, установка компоненты, перезапуск процесса и отправка внешних событий при сборке HTML не выполнялись.
Своя управляемая форма: реквизиты КодКниги Строка 40 и СтатусКомпоненты Строка 200, выведите на форму. Основной код — событие самой формы ВнешнееСобытие.
&НаКлиенте
Процедура ВнешнееСобытие(Источник, Событие, Данные)
Если Источник <> "УчебнаяКомпонента" Или Событие <> "КодКниги" Тогда
Возврат;
КонецЕсли;
КодКниги = СокрЛП(Данные);
Если Не ПустаяСтрока(КодКниги) Тогда
СтатусКомпоненты = "Получен собственный код книги: " + КодКниги;
Сообщить(СтатусКомпоненты);
КонецЕсли;
КонецПроцедурыРазбор по шагам
Подготовьте свою компоненту с указанным событийным контрактом.
Назначьте обработчик в указанном модуле.
Для обычного внешнего события используйте реальную команду своей компоненты, а не ручной вызов BSL-процедуры.
Как проверить результат
События чужого источника / другого вида не обрабатываются.
Полученный собственный строковый код очищен от внешних пробелов и помещён в реквизит формы; строка не исполняется и не объявляется сохранённой ссылкой книги.
Ожидаемый результат
Показана обычная ограниченная обработка собственного внешнего события / отключения.
На что обратить внимание
Строка события не является доверенным исполняемым кодом.
BSL и процессы компоненты при сборке HTML не исполнялись.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.