|
Как использовать в запросе внешнюю переменную типа дата | ☑ | ||
---|---|---|---|---|
0
Путник_М
12.02.12
✎
20:01
|
Для Н = 0 по ПоследняяСтрока Цикл
ДатаСреза = ТаблицаД[Н].ДатаСреза; Запрос.Текст = "ВЫБРАТЬ | ВыполнениеЗаказовСрезПоследних.Номенклатура.Родитель.Родитель КАК Семейство, | ВыполнениеЗаказовСрезПоследних.Заказ, | ВыполнениеЗаказовСрезПоследних.Заказ.Склад.Подразделение КАК Склад, | ВыполнениеЗаказовСрезПоследних.Распределено КАК Распределено, | ВыполнениеЗаказовСрезПоследних.Статус, | НАЧАЛОПЕРИОДА(""" + ДатаСреза + """, ДЕНЬ) КАК Период |ИЗ | РегистрСведений.ВыполнениеЗаказов.СрезПоследних( | """ + ДатаСреза + """, | Заказ ССЫЛКА Документ.ЗаказПокупателя | И Заказ.Склад.Подразделение В ИЕРАРХИИ (&СКЛАДЫ) | И (НЕ Заказ.Склад.ПометкаУдаления) | И (НЕ Номенклатура В ИЕРАРХИИ (&ГРУШИ))) КАК ВыполнениеЗаказовСрезПоследних | ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрНакопления.ЗаказыПокупателей.Остатки( | """ + ДатаСреза + """, | (НЕ ЗаказПокупателя.Подразделение = &ОптОтдел) | И (НЕ ЗаказПокупателя.Самовывоз)) КАК ЗаказыПокупателейОстатки | ПО ВыполнениеЗаказовСрезПоследних.Номенклатура = ЗаказыПокупателейОстатки.Номенклатура | И ВыполнениеЗаказовСрезПоследних.Заказ = ЗаказыПокупателейОстатки.ЗаказПокупателя |ГДЕ | ВыполнениеЗаказовСрезПоследних.Распределено > 0 | И (ВыполнениеЗаказовСрезПоследних.Статус = ЗНАЧЕНИЕ(Перечисление.СтатусыЗаказовНов.Распределен) | ИЛИ ВыполнениеЗаказовСрезПоследних.Статус = ЗНАЧЕНИЕ(Перечисление.СтатусыЗаказовНов.Создан) | ИЛИ ВыполнениеЗаказовСрезПоследних.Статус = ЗНАЧЕНИЕ(Перечисление.СтатусыЗаказовНов.ЧастичноОплачен) | ИЛИ ВыполнениеЗаказовСрезПоследних.Статус = ЗНАЧЕНИЕ(Перечисление.СтатусыЗаказовНов.Оплачен) | ИЛИ ВыполнениеЗаказовСрезПоследних.Статус = ЗНАЧЕНИЕ(Перечисление.СтатусыЗаказовНов.РаспределенЧастично)) | И (НЕ ВыполнениеЗаказовСрезПоследних.ЕдиновременнаяДоставка) | И ЗаказыПокупателейОстатки.КоличествоОстаток > 0"; Если Н <> ПоследняяСтрока Тогда Запрос.Текст = Запрос.Текст + " | ОБЪЕДИНИТЬ ВСЕ |"; КонецЕсли; КонецЦикла; |
|||
1
Путник_М
12.02.12
✎
20:03
|
Мне нужно использовать именно переменную полученную в результате цикла! Подскажите может кавычки не хватает или чего еще
|
|||
2
БибиГон
12.02.12
✎
20:04
|
ошибка чтоли?
запрос в цикле это не кошерно. ) |
|||
3
Путник_М
12.02.12
✎
20:04
|
Подскажите плиз пипец как надо!!!
|
|||
4
andrewks
12.02.12
✎
20:04
|
про параметры запроса слышал?
|
|||
5
Путник_М
12.02.12
✎
20:05
|
(2) я понимаю но сейчас другого выхода нет! Выдает ошибку на дату
|
|||
6
mirosh
12.02.12
✎
20:05
|
(4) здесь они не подойдут, т.к. запрос в цикле формируется демонически
|
|||
7
Путник_М
12.02.12
✎
20:05
|
(4) конечно слышал мне именно нужно внешнюю прикрутить
|
|||
8
andrewks
12.02.12
✎
20:05
|
(6) и что?
|
|||
9
Reaper_1c
12.02.12
✎
20:06
|
(6) чойта?
|
|||
10
Путник_М
12.02.12
✎
20:06
|
Люди, какой у меня не хватает кавычки))
|
|||
11
БибиГон
12.02.12
✎
20:06
|
(6) какая разница?
(0) &ДатаСреза |
|||
12
БибиГон
12.02.12
✎
20:07
|
(10) Ошибку выкладывай. )
|
|||
13
Grusswelle
12.02.12
✎
20:07
|
&ДатаСреза (параметр в тексте запрооса). Но запрос в цикле - это не комильфо!
|
|||
14
Путник_М
12.02.12
✎
20:08
|
(13) я понимаю мне нужно получить срез последних по заданному периоду
|
|||
15
БибиГон
12.02.12
✎
20:09
|
(13) для небольшой базы сойдет. ;)
|
|||
16
mirosh
12.02.12
✎
20:10
|
(8) (9) (11) ну предложили бы свои варианты, а то спорить все горазды. Парни, вы что, не видите, что дата среза у человека формируется разная:
ДатаСреза = ТаблицаД[Н].ДатаСреза; хм, можно конечно извратиться. Итак. (0) привет, Путник_М. Смотри как можно сделать. 1. Вместо """ + ДатаСреза + """ в запросе пишешь &ДатаСреза" + Строка(Н) + " 2. Затем в конце итерации цикла пишешь. Запрос.УстановитьПараметр("ДатаСреза" + Строка(Н), ТаблицаД[Н].ДатаСреза). Как-то так. |
|||
17
БибиГон
12.02.12
✎
20:13
|
(16) что есть Строка(Н)?
|
|||
18
mirosh
12.02.12
✎
20:14
|
(17) преобразование переменной Н числового типа в строковый тип
|
|||
19
Путник_М
12.02.12
✎
20:14
|
Спасибо буду пробовать!)
|
|||
20
andrewks
12.02.12
✎
20:17
|
(16) не, это как раз нормальное решение (я не про запрос в цикле, конечно, а про установку параметра).
а извратиться надо было предложить через ДАТАВРЕМЯ() |
|||
21
mirosh
12.02.12
✎
20:19
|
(20) ну так предложи, в чем проблема. а то я один предлагаю, а все критикуют.
|
|||
22
andrewks
12.02.12
✎
20:19
|
(21) я изврат предлагать не буду :)
|
|||
23
Путник_М
12.02.12
✎
20:47
|
(16) Спасибо мысль хорошая попробовал все равно формируется отчет на последнюю дату! т.е с одной колонкой! Причем прорабатываю в консолеЗапросов Все норм выдает столько колонок сколько дат задано!
|
|||
24
Путник_М
12.02.12
✎
20:48
|
Отладчиком пробегался запрос динамически вырастает!
|
|||
25
Путник_М
12.02.12
✎
20:48
|
Почему выводится только колонка с последней датой не понятно..
|
|||
26
Злобный Фей
12.02.12
✎
20:57
|
Автар, у тебя ж в цикле каждый раз текст запроса заново присваивается?
|
|||
27
mirosh
12.02.12
✎
20:58
|
(26) о, точно ведь!
|
|||
28
Лефмихалыч
12.02.12
✎
21:02
|
(6) да отсохнут наиух руки, написавшие это
|
|||
29
Путник_М
12.02.12
✎
21:12
|
Василь Василич...))) Спасибо точно а я то думаю че за чудеса на решете!!! Оказывается все просто нельзя работать в выходной))) Всем спасибо!
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |