Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
29 сен 2024, 07:28

Открыть форму через COM

Автор ef0din, 23 янв 2020, 00:13

0 Пользователей и 1 гость просматривают эту тему.

ef0din

Добрый вечер! Есть 2 базы. Нужно по нажатии кнопки из формы документа одной по УИДу находить ДоговорКонтрагентов в другой базе(создавать, если не найден). Тут все понятно. Но дальше нужно открыть форму договора. Через открыть модально получается. Но нужно в асинхронном режиме.
Пробовал через "ОткрытьФорму" и через "ПолучитьФорму" -> "ПолученнаяФорма.Открыть()". В первом случае это выглядит так:

ПараметрыФормыДО = БазаERP.NewObject("Структура", "Ключ", СсылкаНаДог);
БазаERP.ОткрытьФорму("Справочник.ДоговорыКонтрагентов.ФормаЭлемента", ПараметрыФормыДО,,,,,, );


Выдает: "Неизвестное имя формы, Имя: "Справочник.ДоговорыКонтрагентов.ФормаЭлемента"

При втором варианте ошибок не выдает, но и не открывает ничего.

Платформа: 8.3.15.1700
База из которой пытаюсь открывать: Документооборот 8 КОРП, редакция 2.1 (2.1.12.2)
База куда через COM подключаюсь: 1С:ERP Управление предприятием 2 (2.4.10.89)

Кто в теме и что-то подобное пробовал: возможно ли это вообще реализовать и, если да, - каким образом?
Спасибо!

ef0din

Поправочка:
Для "ОткрытьФорму()" такие варианты пытался:
ЦитироватьБазаERP.ОткрытьФорму("Справочник.ДоговорыКонтрагентов.Форма.ФормаЭлемента", ПараметрыФормыДО,,,,,, );
- ошибок нет, но формы не открывается
ЦитироватьБазаERP.ОткрытьФорму("Справочник.ДоговорыКонтрагентов.ФормаОбъекта", ПараметрыФормыДО,,,,,, );
- Выдает: "Неизвестное имя формы, Имя: "Справочник.ДоговорыКонтрагентов.ФормаОбъекта"
Для "Открыть()":
ЦитироватьФормаД = БазаERP.ПолучитьФорму("Справочник.ДоговорыКонтрагентов.ФормаОбъекта", ПараметрыФормыДО);
ФормаД.Открыть()
- тоже ошибок нет, но и форма не открывается.

ДмитрийФ

Через COM можно только простые типы данных получить. Форму открыть не получится.

ef0din

Цитата: ДмитрийФ от 23 янв 2020, 08:18
Через COM можно только простые типы данных получить. Форму открыть не получится.

Модальное открытие отрабатывает вроде, но проблема в том, что отрабатывает долго. Мне, видимо, знаний не хватает. Не могли бы пояснить ,если не сложно?
Добавлено: 23 янв 2020, 10:14


Еще кое-что: "ОткрытьФорму()" пробовал так же с режимом открытия "БазаЕРП.РежимОткрытияОкнаФормы.БлокироватьВесьИнтерфейс". Причем, что меня удивило: "РежимОткрытияОкнаФормы.БлокироватьВесьИнтерфейс" - ошибку выдает. А через "БазаЕРП.РежимОткрытияОкнаФормы.БлокироватьВесьИнтерфейс" - вроде как отрабатывает.

ДмитрийФ

Цитата: ДмитрийФ от 23 янв 2020, 08:18
Через COM можно только простые типы данных получить. Форму открыть не получится.
Это через "V83.COMConnector", через "v83.Application" можно открыть модально, про асинхронно впервые слышу.

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск