|
0
Грызлик
20.07.16
✎
07:50
|
Добрый день. Ситуация такая. Есть база. В ней настройка "Режим использования синхронных вызовов" стоит не использовать. И при обращение к компоненте выдется ошибка на запрет использования синхронных методов.
Далее. Пишу код.
АдресКомпоненты = ПолучитьКомпонентуНаСервере(); //вытягиваю компоненту из макета с сервера на клиент
Если ВКУспешноПодключена = Неопределено Тогда
Оповещение = Новый ОписаниеОповещения("ПодключитьВКНаКлиентеВесы1", ЭтаФорма, АдресКомпоненты);
т.е. стоит аинхронный режим, то использую не ПодключитьВнешнююКомпоненту, а НачатьПодключениеВнешнейКомпоненты
НачатьПодключениеВнешнейКомпоненты(Оповещение, АдресКомпоненты, "ServerAuto", ТипВнешнейКомпоненты.Native);
Иначе
глВесы1 = Новый ("AddIn.ServerAuto.Add1CServerVesy");
глВесы1.ОткрытьСерверВесы("");
КонецЕсли;
Код такой, сначала из макета с сервера вытаскиваю на клиент саму компоненту, потом я ее подключаю. т.к. стоит асинхронный режим, то использую метод не ПодключитьВнешнююКомпоненту, а НачатьПодключениеВнешнейКомпоненты. На этом этапе все отрабатывает.
Далее, делаю следующую строку кода глВесы1 = Новый ("AddIn.ServerAuto.Add1CServerVesy"); И вот тут мне 1с говорит что глВесы1 использовать синхронный метод запрещено.
Если я включаю в настройках конфигурации синхронный режим, то работает как нужно.
Вопрос, а как теперь открыть саму компоненту после подключения в асинхронном режиме???
|
|
|
2
Грызлик
20.07.16
✎
08:15
|
(1) Там просто ничего полезного нет. Поэтому не стал выкладывать. Ниже код этой процедуры
&НаКлиенте
Процедура ПодключитьВКНаКлиентеВесы1(Результат, ДопПараметры) Экспорт
Если Результат Тогда
ВКУспешноПодключена = Истина;
НачатьОперациюВзвешиванияВесов1();
Иначе
Попытка
АдресКомпоненты = ДопПараметры;
НачатьУстановкуВнешнейКомпоненты(, АдресКомпоненты);
//И далее возвращаемся в процедуру из топика в пункте (0)
ВКУспешноПодключена = Истина; //глобальная переменная в модуле формы документа
НачатьОперациюВзвешиванияВесов1();
Исключение
ВКУспешноПодключена = Ложь;
Сообщение = Новый СообщениеПользователю;
Сообщение.Текст = "Не удалось подключить внешнюю компоненту. Обратитесь к администратору. Или запустите из под администратор";
Сообщение.Сообщить();
КонецПопытки;
КонецЕсли;
КонецПроцедуры // ПодключитьВКНаКлиенте()
|
|
|
4
Грызлик
20.07.16
✎
08:34
|
(3) Читал, там нет примера. Все рекомендации которые описаны я выполнил. Но вот само чтение компоненты...
Заметил в статье, что в БСП реализованы такие процедуры. Буду скачивать. Смотреть.
|
|