![]() |
![]() |
![]() |
|
Помогите с запросом | ☑ | ||
---|---|---|---|---|
0
Andy_Man
14.06.12
✎
14:33
|
Запрос = новый Запрос;
Запрос.Текст = "ВЫБРАТЬ | ЕстьNULL(ТоварыОрганизацийОстатки.КоличествоОстаток,0) КАК ОстатокОрг, | ПартииТоваровНаСкладахОстатки.КоличествоОстаток КАК ОстатокПар, | ТоварыОрганизацийОстатки.Номенклатура, | ТоварыОрганизацийОстатки.ХарактеристикаНоменклатуры, | ТоварыОрганизацийОстатки.СерияНоменклатуры, | ТоварыОрганизацийОстатки.Качество, | ПартииТоваровНаСкладахОстатки.СтоимостьОстаток КАК Стоимость, | ЕстьNULL(ТоварыВРезервеНаСкладахОстатки.КоличествоОстаток,0) КАК ОстатокРез |ИЗ | РегистрНакопления.ТоварыОрганизаций.Остатки( | &ДатаОстатков, | &УсловиеОрг | И &УсловиеСклад) КАК ТоварыОрганизацийОстатки | ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ПартииТоваровНаСкладах.Остатки(&ДатаОстатков, &УсловиеОрг) КАК ПартииТоваровНаСкладахОстатки | ПО ТоварыОрганизацийОстатки.Номенклатура = ПартииТоваровНаСкладахОстатки.Номенклатура | И ТоварыОрганизацийОстатки.ХарактеристикаНоменклатуры = ПартииТоваровНаСкладахОстатки.ХарактеристикаНоменклатуры | ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыВРезервеНаСкладах.Остатки(&ДатаОстатков, &УсловиеСклад) КАК ТоварыВРезервеНаСкладахОстатки | ПО ТоварыОрганизацийОстатки.Номенклатура = ТоварыВРезервеНаСкладахОстатки.Номенклатура | И ТоварыОрганизацийОстатки.ХарактеристикаНоменклатуры = ТоварыВРезервеНаСкладахОстатки.ХарактеристикаНоменклатуры |ГДЕ | ТоварыОрганизацийОстатки.КоличествоОстаток > 0 | И ТоварыВРезервеНаСкладахОстатки.ДокументРезерва.Номер В(&МассивСделок) | И ТоварыВРезервеНаСкладахОстатки.ДокументРезерва.Организация = &Организация"; Если ЗначениеЗаполнено(ДатаОстатков) тогда Запрос.УстановитьПараметр("ДатаОстатков",ДатаОстатков); Иначе Запрос.УстановитьПараметр("ДатаОстатков",ТекущаяДата()); КонецЕсли; Если НЕ ЗначениеЗаполнено(Склад) тогда Запрос.Текст=СтрЗаменить(Запрос.Текст, "&УсловиеСклад", "ИСТИНА"); Иначе Запрос.Текст=СтрЗаменить(Запрос.Текст, "&УсловиеСклад", "(Склад = (&Склад))"); Запрос.Параметры.Вставить("Склад",Склад); КонецЕсли; Если НЕ ЗначениеЗаполнено(Организация) тогда Запрос.Текст=СтрЗаменить(Запрос.Текст, "&УсловиеОрг", "ИСТИНА"); Иначе Запрос.Текст=СтрЗаменить(Запрос.Текст, "&УсловиеОрг", "(Организация = (&Организация))"); Запрос.Параметры.Вставить("Организация",Организация); КонецЕсли; Запрос.УстановитьПараметр("МассивСделок",МассивСделок); Запрос почему то выбирает не все остатки ( . Не пойму почему? |
|||
1
butterbean
14.06.12
✎
14:34
|
(0) у тебя же 100500 отборов, конечно будут не все остатки
|
|||
2
Coldboy
14.06.12
✎
14:37
|
Запрос.Текст=СтрЗаменить(Запрос.Текст, "&УсловиеСклад", "ИСТИНА");
Запрос.Текст=СтрЗаменить(Запрос.Текст, "&УсловиеОрг", "ИСТИНА"); что это такое, если нет организации то брать по всем, вроде бы просто "" должно быть, мое ИМХО, у меня лично так конструктор дает. |
|||
3
Andy_Man
14.06.12
✎
14:38
|
Мне надо выбрать все остатки за минусом резервов по некоторому списку заказов.
|
|||
4
Andy_Man
14.06.12
✎
14:47
|
(2) поподробней можно?
|
|||
5
Ololoshka
14.06.12
✎
15:36
|
(2)он имеет ввиду попробовать написать так:
Запрос.Текст=СтрЗаменить(Запрос.Текст, "&УсловиеСклад", ""); Запрос.Текст=СтрЗаменить(Запрос.Текст, "&УсловиеОрг", ""); |
|||
6
Buster007
14.06.12
✎
15:39
|
(0) не слушай их (2)(5)
|
|||
7
cViper
14.06.12
✎
15:40
|
(0) ГДЕ
| ТоварыОрганизацийОстатки.КоличествоОстаток > 0 | И ТоварыВРезервеНаСкладахОстатки.ДокументРезерва.Номер В(&МассивСделок) | И ТоварыВРезервеНаСкладахОстатки.ДокументРезерва.Организация = &Организация"; Вот это в параметры виртуальной таблицы кинь. |
|||
8
Buster007
14.06.12
✎
15:41
|
у тебя из-за | И ТоварыВРезервеНаСкладахОстатки.ДокументРезерва.Номер В(&МассивСделок)
| И ТоварыВРезервеНаСкладахОстатки.ДокументРезерва.Организация = &Организация"; внутреннее соединение получается |
|||
9
cViper
14.06.12
✎
15:48
|
(0) Почему по серии не соединяешь?
(8) Все правильно написал. |
|||
10
Buster007
14.06.12
✎
15:50
|
(9) окау
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |