Как открыть визуальный объект другой базы через COM-соединение (1Cv8)

Материал из КинтВики
Перейти к: навигация, поиск


<source lang=1c> Функция УстановитьСОМСоединениеСВнешнейБазой(СОМ,База) Экспорт НаименованиеБазы=СокрЛП(База.Наименование); НаименованиеПользователя=СокрЛП(База.СОМПользователь); Пароль=СокрЛП(База.СОМПароль); Состояние(">>> Выполняется СОМ-соединение: "+НаименованиеБазы); СОМ=Новый COMОбъект("V81.Application"); //СОМ=Новый COMОбъект("V81.Connect"); Попытка Открыта=СОМ.Connect("File="""+СокрЛП(База.КаталогБазыДанных)+""";Usr="""+НаименованиеПользователя+""";Pwd="""+Пароль+""";"); Исключение Сообщить("Соединение не установлено. База: "+НаименованиеБазы); Возврат Ложь; КонецПопытки; Возврат Истина; КонецФункции

Процедура ОтменитьСОМСоединениеСВнешнейБазой(СОМ) Экспорт СОМ=""; КонецПроцедуры

Процедура ОсновныеДействияФормыСОМФорма(Кнопка) СОМ=Новый COMОбъект("V81.Application"); Если Не УстановитьСОМСоединениеСВнешнейБазой(СОМ,ВнешняяБаза) Тогда Возврат; КонецЕсли;

МенеджерДокумента=СОМ.Документы.АвансовыйОтчет; //МенеджерДокумента=СОМ.Документы.ДокументУниверсальный; ФормаВыбора=МенеджерДокумента.ПолучитьФормуВыбора(); ФормаВыбора.ОткрытьМодально();

//Документ=МенеджерДокумента.СоздатьДокумент(); //ФормаДокумента=Документ.ПолучитьФорму(); //ФормаДокумента.ОткрытьМодально(); ОтменитьСОМСоединениеСВнешнейБазой(СОМ); КонецПроцедуры

</source>

При этом в клиентском приложении открываются полноценные окна другой конфигурации.