Имя: Пароль:
1C
1С v8
Табличное поле в запросе
0 arhiordinator
 
21.07.14
16:41
Всем привет, подскажите пожалуйста в чем ошибка. Хочу использовать данные табличного поля,в запросе.
Собственно пытаюсь создать временную таблицу, для дальнейшего использования данных, но выдает ошибку
{(2, 1)}: Тип не может быть выбран в запросе
<<?>>ТЗ.К5 КАК К5
Уже по всякому пробовал.

Запрос = Новый Запрос;
      
Запрос.МенеджерВременныхТаблиц = Новый МенеджерВременныхТаблиц;
  ВременнаяТаблица = Новый ТаблицаЗначений;
ВременнаяТаблица.Колонки.Добавить("К5",Новый ОписаниеТипов("Число"));
      
Запрос.Текст = "ВЫБРАТЬ
|ТЗ.К5 КАК К5  
|ПОМЕСТИТЬ ВременнаяТаблица
|ИЗ &ТЗ КАК ТЗ";
Запрос.УстановитьПараметр("ТЗ", ТабличноеПоле);
Запрос.Выполнить();
1 Maxus43
 
21.07.14
16:42
табличное поле и нельзя, только Таблицу значений
2 Maxus43
 
21.07.14
16:42
Запрос.УстановитьПараметр("ТЗ", ВременнаяТаблица);

ты хотел наверно?
3 Wobland
 
21.07.14
16:43
не типизировал
4 arhiordinator
 
21.07.14
16:45
(3)  то есть ?
5 Maxus43
 
21.07.14
16:45
Новый ОписаниеТипов("Число", Новый КвалификаторыЧисла(15, 2, ДопустимыйЗнак.Любой));
6 Wobland
 
21.07.14
16:45
+(3) не, код правильный, только ты врёшь
7 Maxus43
 
21.07.14
16:45
(6) не врёт, сам показывает в (0) что не то подсовывает
8 arhiordinator
 
21.07.14
16:47
(6) В смысле вру ? Что не так, мож нельзя испольщовать Табличное поле с формы, но там набор из таблицы значений.
9 Wobland
 
21.07.14
16:47
(7) а, ну да ;)
10 Wobland
 
21.07.14
16:47
(8) скоро ты заметишь (2), не сдавайся и продолжай читать ветку
11 arhiordinator
 
21.07.14
16:49
(10)  Как я могу использовать ВременнуюТаблицу если я туда помещаю. А беру данные из ТабличноеПоле.
12 Maxus43
 
21.07.14
16:50
(11) Запрос.УстановитьПараметр("ТЗ", ТабличноеПоле.Значение);

Слово ТИП тебе знакомо? разницу между ТЗ и ТП осознаём? Это разные вещи, запросу можно скормить только ТЗ
13 Wobland
 
21.07.14
16:50
(11) платформа тебе автоматом создала реквизито формы с типом ТЗ, а ты и не заметил
14 Maxus43
 
21.07.14
16:50
(11) ну ты ж так назвал,
ВременнаяТаблица = Новый ТаблицаЗначений;

это твой код
15 anatoly
 
21.07.14
16:50
а почему не передавать просто СписокЗначений как параметр, если все равно одно поле из ТЗ берется?
16 Wobland
 
21.07.14
16:52
(15) передай СЗ параметром, никто слова не скажет. не в этом запросе, конечно
17 arhiordinator
 
21.07.14
16:59
(16) Да дело в том, что в этом ТабличномПоле ещё нужно забрать новую цену.
Первое это код номенклатуры, второе новая цена.
Но код в виде строки, что бы перебором не искать использую запрос, он мне все объекты возвращает. А как цену туда запихнуть не пойму, вот и решил этот метод покапать, мож что другое посоветуете.
18 Maxus43
 
21.07.14
17:00
я не понимаю в чем вопрос... четко сказано - в качестве параметра запроса может выступать только типизированная таблица значений. В отладчике посомтри тип в конце концов у параметра.
19 Wobland
 
21.07.14
17:09
(17) >решил этот метод покапать
нарколог посоветует покапать. а так - Ицик Бен-Ган - Microsoft SQL Server 2008. Основы T-SQL - 2009.djvu
Выдавать глобальные идеи — это удовольствие; искать сволочные маленькие ошибки — вот настоящая работа. Фредерик Брукс-младший