Завершен

Получение формы через промежуточную базу

BoJIoCaToE_4yDo 13 лет назад 1
Я понимаю, глупо писать в 2 ночи в 1й день выходных, но все же любопытно, как вызвать форму, а далее процедуру в УТ из промежуточной базы:

Промежуточная база:
ДокументВ1СОбъект = Выборка.Ссылка.ПолучитьОбъект();
Результат = ДокументВ1СОбъект.Провести();
В функцию Провести() промежуточная база влазит

Код УТ:
Функция Провести() Экспорт
Форма = ЭтотОбъект.ПолучитьФорму("ФормаДокумента");
Форма.ЗаполнитьИПровести();
Возврат "получили форму";
КонецФункции

Ошибка в промежуточной базе:
{Обработка.ВнешниеВызовыУТиУПП(5379)}: Ошибка при вызове метода контекста (Провести): Произошла исключительная ситуация: {Документ.ЗаказПокупателя.МодульОбъекта(2628)}: Ошибка при вызове метода контекста (ПолучитьФорму)
При этом ЭтотОбъект он распознает правильно, проверял через возврат. Конечно же в УТ через внешнюю обработку, сделаную просто для проверки, все тоже работает правильно.
Запрос = Новый Запрос("ВЫБРАТЬ ПЕРВЫЕ 1
| ЗаказПокупателя.Ссылка
|ИЗ
| Документ.ЗаказПокупателя КАК ЗаказПокупателя");
Выборка = Запрос.Выполнить().Выбрать();
Выборка.Следующий();
Об = Выборка.Ссылка.ПолучитьОбъект();
Об.Провести();
промежуточная база соединяется с основной через COM. У Com соединения есть ограничение на открытие форм - нельзя использовать интерактивные процедуры, в том числе и получить форму.

Сервис поддержки клиентов работает на платформе UserEcho