Запрос по com-соединению и Список/Массив значений в параметре.
Здравствуйте =), что-то под вечер пятницы туплю - самописная конфа, создал com-соединение к УПП, в запросе пытаюсь получить данные для дальнейшего анализа, передаю в параметр массив значений (вообще ни о чем) - Код (Строка,9), в УПП у справочника ЕИ тоже Код - Строка,9. А у меня ошибка типа неверный параметр.
Процедура ПоискЕИ(ТЗ)
Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ ПЕРВЫЕ 5
| ЕдиницыИзмерения.Код КАК Код,
| ЕдиницыИзмерения.Ссылка,
| ЕдиницыИзмерения.Наименование
|ИЗ
| Справочник.ЕдиницыИзмерения КАК ЕдиницыИзмерения
|
|УПОРЯДОЧИТЬ ПО
| Код
|АВТОУПОРЯДОЧИВАНИЕ";
ТЗPDM = Запрос.Выполнить().Выгрузить();
СЗКод = ТЗPDM.ВыгрузитьКолонку("Код");
ЗапросУПП = БазаУПП.NewObject("Запрос");
ЗапросУПП.Текст = "ВЫБРАТЬ
| ЕдиницыИзмерения.Код КАК Код,
| ЕдиницыИзмерения.Ссылка,
| ЕдиницыИзмерения.Наименование
|ИЗ
| Справочник.ЕдиницыИзмерения КАК ЕдиницыИзмерения
|ГДЕ
| ЕдиницыИзмерения.Код В (&Код)
|
|УПОРЯДОЧИТЬ ПО
| Код
|АВТОУПОРЯДОЧИВАНИЕ";
ЗапросУПП.УстановитьПараметр("Код", СЗКод);
ТЗУПП = ЗапросУПП.Выполнить().Выгрузить();
КонецПроцедуры
ПоказатьПо теме из базы знаний
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
ладно, а как мне ТАМ создать список значений, который берется из локальной базы? =)
P.S. вроде даже не проблема с самим списком где и как он создан, а в передаче параметра, там синтаксис вроде другой или еще что-то не дописываю.
P.S. вроде даже не проблема с самим списком где и как он создан, а в передаче параметра, там синтаксис вроде другой или еще что-то не дописываю.
(3) succub1_5,
в той базе, все также как и в этой, только надо добавлять перед функциями БазаУПП.
а присваиваются, только примитивные типы. Строка, число, булево.
Ну и соответственно, метод выгрузить у тебя не сработает.
Поэтому.
Вариант 1.
Перебор таблицы значений,
и поэлементно добавляем в список той базы элементы.
Вариант 2.
Преобразовать готовый список, в строку,
а в той базе, наоборот из строки обратно список.
используя ЗначениеВСтрокуВнутр и ЗначениеИзСтрокиВнутр
в той базе, все также как и в этой, только надо добавлять перед функциями БазаУПП.
а присваиваются, только примитивные типы. Строка, число, булево.
Ну и соответственно, метод выгрузить у тебя не сработает.
Поэтому.
Вариант 1.
Перебор таблицы значений,
и поэлементно добавляем в список той базы элементы.
Вариант 2.
Преобразовать готовый список, в строку,
а в той базе, наоборот из строки обратно список.
используя ЗначениеВСтрокуВнутр и ЗначениеИзСтрокиВнутр
(3) succub1_5,
например создать список ТАМ
СписокТАМ = БазаУПП.NewObject("СписокЗначений");//Новый СписокЗначений;
СписокТАМ.Добавить(ОЛЕ.справочники.СкладыКомпании.НайтиПоКоду("00000139"));
СписокТАМ.Добавить(ОЛЕ.справочники.СкладыКомпании.НайтиПоКоду("00000104"));
СписокТАМ.Добавить(ОЛЕ.справочники.СкладыКомпании.НайтиПоКоду("00000117"));
если реквизиты строковые, то просто
СписокТАМ.Добавить(СтрокаТЗ.Код);
например создать список ТАМ
СписокТАМ = БазаУПП.NewObject("СписокЗначений");//Новый СписокЗначений;
СписокТАМ.Добавить(ОЛЕ.справочники.СкладыКомпании.НайтиПоКоду("00000139"));
СписокТАМ.Добавить(ОЛЕ.справочники.СкладыКомпании.НайтиПоКоду("00000104"));
СписокТАМ.Добавить(ОЛЕ.справочники.СкладыКомпании.НайтиПоКоду("00000117"));
если реквизиты строковые, то просто
СписокТАМ.Добавить(СтрокаТЗ.Код);
(7)
Спасибо!
СписокТАМ = БазаУПП.NewObject("СписокЗначений");//Новый СписокЗначений;
СписокТАМ.Добавить(ОЛЕ.справочники.СкладыКомпании.НайтиПоКоду("00000139"));
СписокТАМ.Добавить(ОЛЕ.справочники.СкладыКомпании.НайтиПоКоду("00000104"));
СписокТАМ.Добавить(ОЛЕ.справочники.СкладыКомпании.НайтиПоКоду("00000117"));
если реквизиты строковые, то просто
СписокТАМ.Добавить(СтрокаТЗ.Код);
СписокТАМ.Добавить(ОЛЕ.справочники.СкладыКомпании.НайтиПоКоду("00000139"));
СписокТАМ.Добавить(ОЛЕ.справочники.СкладыКомпании.НайтиПоКоду("00000104"));
СписокТАМ.Добавить(ОЛЕ.справочники.СкладыКомпании.НайтиПоКоду("00000117"));
если реквизиты строковые, то просто
СписокТАМ.Добавить(СтрокаТЗ.Код);
Спасибо!
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот