|
Как передать табличную часть документа в параметр | ☑ | ||
---|---|---|---|---|
0
Vendetta
04.12.13
✎
13:00
|
Добрый день,очень нужна помощь.
Нужно изменить запрос так чтобы данные брались не из таблицы документа а из параметров, т.е мне нужно передать табличную часть в параметры,как это сделать? Вот пример кода: Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ РАЗЛИЧНЫЕ | ЗаказПокупателяТовары.Номенклатура КАК Номенклатура, | ЗаказПокупателяТовары.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры |ПОМЕСТИТЬ ТоварыИзДокумента |ИЗ | Документ.ЗаказПокупателя.Товары КАК ЗаказПокупателяТовары |ГДЕ | ЗаказПокупателяТовары.Ссылка = &Ссылка | |ИНДЕКСИРОВАТЬ ПО | Номенклатура, | ХарактеристикаНоменклатуры |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | ЦеныНоменклатурыСрезПоследних.Номенклатура, | ЦеныНоменклатурыСрезПоследних.ХарактеристикаНоменклатуры, | ЕСТЬNULL(ЦеныНоменклатурыСрезПоследних.Цена, 0) КАК Цена |ИЗ | РегистрСведений.ЦеныНоменклатуры.СрезПоследних( | &МоментВремени, | Номенклатура В | (ВЫБРАТЬ | ТоварыИзДокумента.Номенклатура | ИЗ | ТоварыИзДокумента) | И ТипЦен = ЗНАЧЕНИЕ(Справочник.ТипыЦенНоменклатуры.Инвойс) | И (ХарактеристикаНоменклатуры В | (ВЫБРАТЬ | ТоварыИзДокумента.ХарактеристикаНоменклатуры | ИЗ | ТоварыИзДокумента) | ИЛИ ХарактеристикаНоменклатуры = ЗНАЧЕНИЕ(Справочник.ХарактеристикиНоменклатуры.ПустаяСсылка))) КАК ЦеныНоменклатурыСрезПоследних"; Запрос.УстановитьПараметр("МоментВремени", МоментВремени()); Запрос.УстановитьПараметр("Ссылка", Ссылка) |
|||
1
Wobland
04.12.13
✎
13:02
|
а сразу выбрать из неё?
|
|||
2
Vendetta
04.12.13
✎
13:04
|
ну да,нужно сразу выбирать
|
|||
3
Wobland
04.12.13
✎
13:04
|
(2) без всяких параметров
|
|||
4
chelentano
04.12.13
✎
13:05
|
кто-нибудь что-нибудь понял?
|
|||
5
Wobland
04.12.13
✎
13:07
|
(4) я понял. автор думает, что у него какая-то проблема, а её нет
|
|||
6
Vendetta
04.12.13
✎
13:08
|
у меня сейчас данные берутся из Документ.ЗаказПокупателя.Товары,а документ то еще не записан,поэтому нужно передавать эту табличную часть в параметр и оттуда брать данные
|
|||
7
Рэйв
04.12.13
✎
13:08
|
(0)
спТовары=Док.Товары.ВыгрузитьКолонку("Номенклатура"); Запрос.УстановитьПараметр("Ном",спТовары); и в запросе Номенклатура В (&спТовары) Кажется автор силится оптимизировать запрос:-) |
|||
8
Vendetta
04.12.13
✎
13:09
|
спасибо большое!)
|
|||
9
Рэйв
04.12.13
✎
13:09
|
*Номенклатура В (&Ном)
|
|||
10
chelentano
04.12.13
✎
13:10
|
(8) или выгружай ТЧ в ТЗ и в запросе выбирай данные из ТЗ
|
|||
11
Лефмихалыч
04.12.13
✎
13:11
|
Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ РАЗЛИЧНЫЕ | ЗаказПокупателяТовары.Номенклатура КАК Номенклатура, | ЗаказПокупателяТовары.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры |ПОМЕСТИТЬ ТоварыИзДокумента |ИЗ | &ТЧ КАК ЗаказПокупателяТовары " Запрос.УстановитьПараметр("ТЧ", Товары); |
|||
12
Torquader
04.12.13
✎
13:16
|
Если документ не записан, то зачем вообще делать запрос, который работает по базе данных.
Если есть табличная часть в памяти (объект Документ), то выборка из неё не потребует обращение к базе данных (точнее, обращение будет только для "разыменовывания" ссылок). |
|||
13
Vendetta
04.12.13
✎
14:29
|
работает)спасибо ребята!
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |