Запрос к другой базе через СОМ объект
☑
0
Конфигуратор1с
22.08.12
✎
18:17
Можно ли в таком случае использовать тз как параметр?
1
ЧашкаЧая
22.08.12
✎
18:21
ТЗ созданный в COM-объекте наверняка можно.
2
Конфигуратор1с
22.08.12
✎
18:22
(1) То есть создавать не только запрос и менеджер временных таблиц, но и саму тз? СПасибо. Сейчас попробую
3
Конфигуратор1с
22.08.12
✎
18:45
(1)А как мне тип колонки строки задать в СОМ объекте?
4
Конфигуратор1с
22.08.12
✎
18:45
Запрос = Соединение.NewObject("Запрос");
Менеджер = Соединение.NewObject("МенеджерВременныхТаблиц");
Тип = Соединение.NewObject("ОписаниеТипов");
Тип.Типы().Добавить(Тип("Строка"));
ТаблицаЗначений = Соединение.NewObject("ТаблицаЗначений");
ТаблицаЗначений.Колонки.Добавить("Артикул",Тип);
Пишет Тип ВТ.Артикул не может использоваться в запросе
5
GenV
22.08.12
✎
18:53
(0) Попробуй так:
Тип = Соединение.NewObject("ОписаниеТипов", "Строка");
6
Конфигуратор1с
22.08.12
✎
19:12
(5)Спасибо большое, работает!!!
7
Конфигуратор1с
22.08.12
✎
19:12
(1)И Вам спасибо!!!
8
Конфигуратор1с
22.08.12
✎
19:13
Результат
Запрос = Соединение.NewObject("Запрос");
Менеджер = Соединение.NewObject("МенеджерВременныхТаблиц");
Тип = Соединение.NewObject("ОписаниеТипов","Строка");
//Тип.Типы().Добавить(Тип("Строка"));
ТаблицаЗначений = Соединение.NewObject("ТаблицаЗначений");
ТаблицаЗначений.Колонки.Добавить("Артикул",Тип);//,Новый ОписаниеТипов("Строка",, Новый КвалификаторыСтроки(13)));
// ТаблицаЗначений.Колонки.Добавить("Остаток");//,Новый ОписаниеТипов("Число"));
Для каждого Строка Из СкладыМенеджерская Цикл
НоваяСтрока = ТаблицаЗначений.Добавить();
НоваяСтрока.Артикул = Строка.Код;
КонецЦикла;
Запрос.МенеджерВременныхТаблиц = Менеджер;
Запрос.УстановитьПараметр("Таблица",ТаблицаЗначений);
Запрос.Текст = "ВЫБРАТЬ
| ВТ.Артикул КАК Артикул
|ПОМЕСТИТЬ ВТ
|ИЗ
| &Таблица КАК ВТ
|;
|
|////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ *
| ИЗ
| ВТ КАК ВТ";
тз1 = Запрос.Выполнить().Выгрузить();
Пользователь не знает, чего он хочет, пока не увидит то, что он получил. Эдвард Йодан