Имя: Пароль:
1C
 
Запрос через ком-соединение
0 iaminoe
 
04.09.20
10:31
Добрый день. Пытаюсь забрать данные с другой базы через ком-соединение, но бьет ошибку. Не могу понять почему, может кто подскажет?

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

Ошибка:
{Справочник.АР_ИзделияКПретензиям.Форма.ФормаЭлемента.Форма(46)}: Ошибка при вызове метода контекста (Выполнить)
        ТЗ = ЗапросБПЗО.Выполнить().Выгрузить();
по причине:
Произошла исключительная ситуация (1C:Enterprise 8.3.14.1694): {(12, 52)}: Неверные параметры
АР_ПаспортаИзделийСписокИзделий.КодИзделия.Код В (<<?>>&МассивКодов)

В переменной МассивКодов 2 текстовых значения.
1 Галахад
 
гуру
04.09.20
10:35
Не тот массив в параметрах.
2 iaminoe
 
04.09.20
10:37
(1) я идиот, спасибо Вам большое. Пятница и вчерашнее ДР дают знать. Стыд то какой...
3 Шурик71
 
04.09.20
10:38
ЗапросБПЗО.УстановитьПараметр("МассивКодов",МассивКодов);

Комсоединение не понимает массива из другой базы.

МассивКодовКом = Соединение.NewObject("Массив");  
Для каждого Эл из МассивКодов Цикл
МассивКодовКом.Добавить(Эл);
КонецЕсли;
ЗапросБПЗО.УстановитьПараметр("МассивКодов",МассивКодовКом);
4 iaminoe
 
04.09.20
10:58
(3) Да спасибо большое :)
Компьютеры — это как велосипед. Только для нашего сознания. Стив Джобс