ФормаКлиентскогоПриложения.ОтключениеВнешнейКомпонентыПриОшибке

События · AddInDetachmentOnError

Вызывается при падении процесса внешней компоненты.

Синтаксис

ОтключениеВнешнейКомпонентыПриОшибке(<Имя>, <Местоположение>)
Полное описание, параметры и ограничения

ФормаКлиентскогоПриложения.ОтключениеВнешнейКомпонентыПриОшибке (ClientApplicationForm.AddInDetachmentOnError)

ФормаКлиентскогоПриложения (ClientApplicationForm)

ОтключениеВнешнейКомпонентыПриОшибке (AddInDetachmentOnError)

Доступен, начиная с версии 8.3.21.

Синтаксис:
ОтключениеВнешнейКомпонентыПриОшибке(<Имя>, <Местоположение>)
Параметры:

<Имя>
Тип: Строка.
Символическое имя отключаемой внешней компоненты.
Соответствует второму параметру метода ПодключитьВнешнююКомпоненту.

<Местоположение>
Тип: Строка.
Строка, определяющая местоположение внешней компоненты.
Соответствует первому параметру метода ПодключитьВнешнююКомпоненту.
Описание:

Вызывается при падении процесса внешней компоненты.

Доступность:

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

Использование в версии:

Доступен, начиная с версии 8.3.21.

Описание изменено в версии 8.3.22.

Методическая информация

Практические примеры

ОтключениеВнешнейКомпонентыПриОшибке: собственная компонента книг

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

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

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

Подготовка

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

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

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

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

  5. Своя форма: реквизиты КомпонентаДоступна Булево и СтатусКомпоненты Строка 200. Покажите их пользователю; код меняет только свой индикатор, не системный статус других компонент.

  6. Событие возникает при падении процесса своей компоненты. Не завершайте рабочий процесс и не создавайте аварии ради урока; код показывает реакцию на уже возникшую ошибку собственного тестового экземпляра.

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

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

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

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

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

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

  1. Порядок параметров различается: в форме сначала Имя, в модуле приложения сначала Местоположение.

  2. Нет бесконечного автоматического переподключения, скачивания DLL или скрытого перезапуска процессов.

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

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

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

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

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

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

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

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

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

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