ВнешнееСобытие: собственная компонента книг

Учебные задачи

Точная фаза и модуль обработчика отделены от загрузки компоненты, сетевой интеграции и бизнес-записи.

Где и как запускать

Модуль собственной управляемой формы, клиентское событие.

Подготовка

  1. Редкий событийный API: собственная доверенная Native API-компонента УчебнаяКомпонента, заранее подключённая штатно в своей учебной базе. Компонента действительно должна уметь посылать внешние события; DLL и её C++-реализация этим примером не создаются.

  2. Явный собственный контракт компоненты: Источник=УчебнаяКомпонента, Событие=КодКниги, строка Данные=BOOK-001. Имя источника задаёт сама компонента; оно не обязано автоматически совпадать со вторым аргументом ПодключитьВнешнююКомпоненту.

  3. Обработчик формы и обработчик приложения получают одно событие на разных фазах. Если изучаете оба, оставьте бизнес-обработку только в одном месте: формы вызываются раньше общего обработчика. Пример не выполняет строку Данные как BSL.

  4. BSL, установка компоненты, перезапуск процесса и отправка внешних событий при сборке HTML не выполнялись.

  5. Своя управляемая форма: реквизиты КодКниги Строка 40 и СтатусКомпоненты Строка 200, выведите на форму. Основной код — событие самой формы ВнешнееСобытие.

&НаКлиенте
Процедура ВнешнееСобытие(Источник, Событие, Данные)
    Если Источник <> "УчебнаяКомпонента" Или Событие <> "КодКниги" Тогда
        Возврат;
    КонецЕсли;
    КодКниги = СокрЛП(Данные);
    Если Не ПустаяСтрока(КодКниги) Тогда
        СтатусКомпоненты = "Получен собственный код книги: " + КодКниги;
        Сообщить(СтатусКомпоненты);
    КонецЕсли;
КонецПроцедуры

Разбор по шагам

  1. Подготовьте свою компоненту с указанным событийным контрактом.

  2. Назначьте обработчик в указанном модуле.

  3. Для обычного внешнего события используйте реальную команду своей компоненты, а не ручной вызов BSL-процедуры.

Как проверить результат

  1. События чужого источника / другого вида не обрабатываются.

  2. Полученный собственный строковый код очищен от внешних пробелов и помещён в реквизит формы; строка не исполняется и не объявляется сохранённой ссылкой книги.

Ожидаемый результат

Показана обычная ограниченная обработка собственного внешнего события / отключения.

На что обратить внимание

  1. Строка события не является доверенным исполняемым кодом.

  2. BSL и процессы компоненты при сборке HTML не исполнялись.

Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.

Не хотите разбираться сами?

Адаптируем это решение под вашу базу. Оценка бесплатно.

Оставить задачу

1С, 1С:Предприятие — товарные знаки ООО «1С». Сайт не является официальным представительством фирмы «1С» и не аффилирован с ней.