Добрый день, коллеги.
Впервые столкнулся с необходимость создания объекта в одной базе на основании данных другой базы.
Пытаюсь по COM соединению вызвать экспортную процедуру и в качестве параметра передать ей таблицу значений.

```1c
    // Подключение к базе
    Соединение = Новый COMОбъект("V83.COMConnector");
    ПараметрыДоступа = "Srvr="fry";Ref="enterprise_copy2";Usr="!!!";Pwd="!!!!!!!!";";

    Попытка
    База = Соединение.Connect(ПараметрыДоступа);

    ТаблицаДанных = База.NewObject("ТаблицаЗначений");
    ТаблицаДанных.Колонки.Добавить("УИД");
    ТаблицаДанных.Колонки.Добавить("Дата");
    ТаблицаДанных.Колонки.Добавить("КонтрагентНаименование");
    ТаблицаДанных.Колонки.Добавить("КонтрагентИНН");
    ТаблицаДанных.Колонки.Добавить("НомерСчета");
    ТаблицаДанных.Колонки.Добавить("БикБанка");
    ТаблицаДанных.Колонки.Добавить("Сумма");

    Для каждого Стр Из ЭтотОбъект.Зарплата Цикл
    СтрТабл = ТаблицаДанных.Добавить();
    СтрТабл.УИД = Строка(ЭтотОбъект.Ссылка.УникальныйИдентификатор());
    СтрТабл.Дата = ЭтотОбъект.Дата;
    СтрТабл.КонтрагентНаименование = Стр.ФизическоеЛицо.Наименование;
    СтрТабл.КонтрагентИНН = Стр.ФизическоеЛицо.ИНН;
    СтрТабл.НомерСчета = Стр.БанковскийСчет.НомерСчета;
    СтрТабл.БикБанка = Стр.БанковскийСчет.Банк.Код;
    СтрТабл.Сумма = Стр.КВыплате;
    КонецЦикла;

    ТаблицаДанных.Свернуть("УИД, Дата, КонтрагентНаименование, КонтрагентИНН, НомерСчета, БикБанка", "Сумма");

    База.vgДопФункцииИПроцедуры.SaСоздатьПлатежноеПоручениеИзЗУП(ТаблицаДанных);
    Исключение
    Сообщить("Проблемы при подключении: " + ОписаниеОшибки());
    КонецПопытки;
```

Далее в процедуре эту таблицу значений хочу использовать в качестве источника данных для запроса

```1c
    Процедура SaСоздатьПлатежноеПоручениеИзЗУП(Таблица) Экспорт
    //Ищем контрагентов и их счета, недостоющих создаём
    Запрос = Новый Запрос;
    Запрос.Текст =
    "ВЫБРАТЬ
    | Данные.УИД КАК УИД,
    | Данные.Дата КАК Дата,
    | Данные.КонтрагентНаименование КАК КонтрагентНаименование,
    | Данные.КонтрагентИНН КАК КонтрагентИНН,
    | Данные.НомерСчета КАК НомерСчета,
    | Данные.БикБанка КАК БикБанка,
    | Данные.Сумма КАК Сумма
    |ПОМЕСТИТЬ ВТ_Данные
    |ИЗ
    | &Данные КАК Данные
    |;
    |
    |////////////////////////////////////////////////////////////­////////////////////
    |ВЫБРАТЬ
    | Контрагенты.Ссылка КАК КонтрагентСсылка,
    | Контрагенты.ИНН КАК КонтрагентИНН
    |ПОМЕСТИТЬ ВТ_ДанныеКонтрагентов
    |ИЗ
    | Справочник.Контрагенты КАК Контрагенты
    |ГДЕ
    | Контрагенты.Родитель = &Родитель
    |;
    |
    |////////////////////////////////////////////////////////////­////////////////////
    |ВЫБРАТЬ
    | БанковскиеСчета.Ссылка КАК СчетСсылка,
    | БанковскиеСчета.НомерСчета КАК НомерСчета
    |ПОМЕСТИТЬ ВТ_БанковскиеСчета
    |ИЗ
    | ВТ_ДанныеКонтрагентов КАК ВТ_ДанныеКонтрагентов
    | ЛЕВОЕ СОЕДИНЕНИЕ Справочник.БанковскиеСчета КАК БанковскиеСчета
    | ПО ВТ_ДанныеКонтрагентов.КонтрагентСсылка = БанковскиеСчета.Владелец
    |;
    |
    |////////////////////////////////////////////////////////////­////////////////////
    |ВЫБРАТЬ
    | ВТ_Данные.УИД КАК УИД,
    | ВТ_Данные.Дата КАК Дата,
    | ВТ_Данные.КонтрагентНаименование КАК КонтрагентНаименование,
    | ВТ_ДанныеКонтрагентов.КонтрагентСсылка КАК КонтрагентСсылка,
    | ВТ_Данные.КонтрагентИНН КАК КонтрагентИНН,
    | ВТ_Данные.НомерСчета КАК НомерСчета,
    | ВТ_БанковскиеСчета.СчетСсылка КАК СчетСсылка,
    | ВТ_Данные.БикБанка КАК БикБанка,
    | ВТ_Данные.Сумма КАК Сумма
    |ИЗ
    | ВТ_Данные КАК ВТ_Данные
    | ЛЕВОЕ СОЕДИНЕНИЕ ВТ_ДанныеКонтрагентов КАК ВТ_ДанныеКонтрагентов
    | ПО ВТ_Данные.КонтрагентИНН = ВТ_ДанныеКонтрагентов.КонтрагентИНН
    | ЛЕВОЕ СОЕДИНЕНИЕ ВТ_БанковскиеСчета КАК ВТ_БанковскиеСчета
    | ПО ВТ_Данные.НомерСчета = ВТ_БанковскиеСчета.НомерСчета";

    Запрос.УстановитьПараметр("Данные", Таблица);
    Запрос.УстановитьПараметр("Родитель", Справочники.Контрагенты.НайтиПоКоду("00001810"));

    ДанныеДляЗаполнения = Запрос.Выполнить().Выгрузить();

    КонецПроцедуры
```

И вот тут получаю ошибку

Произошла исключительная ситуация (1C:Enterprise 8.3.18.1289): {ОбщийМодуль.vgДопФункцииИПроцедуры.Модуль(232)}: Ошибка при вызове метода контекста (Выполнить)
{(2, 2)}: Тип не может быть выбран в запросе
<<?>>Данные.УИД КАК УИД,

Я так понимаю что на стороне вызываемой базы, в параметре процедуры не таблица значений, а COM объект и он не может использоваться в качестве параметра запроса. Тогда как его на стороне вызываемой базы преобразовать в таблицу значений?
---
Колонки таблицы должны быть типизированы для передачи в запрос. У вас же у всех колонок тип не указан. Вот и ругается.
---
Например.

      ТипСклад = Новый ОписаниеТипов("СправочникСсылка.Склады");

 ТЗОстаткиИОбороты = Новый ТаблицаЗначений;
 ТЗОстаткиИОбороты.Колонки.Добавить("Склад",ТипСклад);
---
Колонки таблицы должны быть типизированы для передачи в запрос. У вас же у всех колонок тип не указан. Вот и ругается.
---
Да, в этом причина была. Большое спасибо.
---
При использовании Менеджера временных таблиц колонки должны быть типизированы. Может в этом дело.
---
Например.

      ТипСклад = Новый ОписаниеТипов("СправочникСсылка.Склады");

 ТЗОстаткиИОбороты = Новый ТаблицаЗначений;
 ТЗОстаткиИОбороты.Колонки.Добавить("Склад",ТипСклад);
---
Да, в этом причина была. Большое спасибо.