Асинхронно получить и изменить свойство компоненты

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

Работаем с настоящими экспортами собственной компоненты: Offset = 10, затем сложение 2 + 3 + 10.

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

Клиентский модуль своей управляемой формы. Подготовьте указанные элементы и команды; здесь интерфейс не запускался.

Подготовка

  1. Подготовьте собственный ZIP внешней компоненты Native API в общем макете УчебнаяКомпонента. Она должна действительно предоставлять класс Calculator, числовое RW-свойство Offset и метод Сложить(А, Б), возвращающий А + Б + Offset.

  2. Это не встроенные имена платформы: установку, совместимость и эти экспорты обеспечивает ваш компонент. Все обработчики вставляются в модуль своей управляемой формы; создание объекта выполняется после подключения.

&НаКлиенте
Асинх Процедура ПроверитьКомпоненту()
    Ждать УстановитьВнешнююКомпонентуАсинх("ОбщийМакет.УчебнаяКомпонента");
    Подключено = Ждать ПодключитьВнешнююКомпонентуАсинх("ОбщийМакет.УчебнаяКомпонента", "УчебнаяКомпонента");
    Если Не Подключено Тогда
        ВызватьИсключение "Учебная компонента не подключена";
    КонецЕсли;
    Компонента = Ждать СоздатьОбъектВнешнейКомпонентыАсинх("AddIn.УчебнаяКомпонента.Calculator");
    Ждать Компонента.УстановитьOffsetАсинх(10);
    Смещение = Ждать Компонента.ПолучитьOffsetАсинх();
    Результат = Ждать Компонента.СложитьАсинх(2, 3);
    Сообщить(Смещение);
    Сообщить(Результат.Значение);
    Сообщить(Результат.Параметры.Количество());
КонецПроцедуры

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

  1. Устанавливаем, подключаем и создаём собственную компоненту.

  2. Асинхронно записываем и читаем Offset.

  3. Получаем результат метода и исходные параметры вызова.

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

  1. При указанном контракте компоненты сообщения содержат 10, 15 и 2.

  2. При неудачном подключении вызовы экспортов не выполняются.

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

Контрольный результат описывает будущую ручную проверку в подготовленном учебном окружении. Выполнение в 1С здесь не проверялось.

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

  1. Имя экспорта подставляется буквально: ПолучитьOffsetАсинх. Все эти методы клиентские; Ждать используется только внутри Асинх.

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

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

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

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

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