![]() |
![]() |
![]() |
|
Запрос. | ☑ | ||
---|---|---|---|---|
0
lapatunec
15.11.11
✎
16:34
|
8.1. Розница 1. Есть запрос:
ВЫБРАТЬ ТоварыНаСкладахОстатки.Номенклатура.Код КАК Код, ТоварыНаСкладахОстатки.Номенклатура, ТоварыНаСкладахОстатки.КоличествоОстаток, ТоварыНаСкладахОстатки.КоличествоОстаток * ТоварыНаСкладахОстатки.РозничнаяЦена / ТоварыНаСкладахОстатки.ЕдиницаИзмерения.Коэффициент КАК Сумма, ПоступлениеТоваровТовары.Ссылка, ПоступлениеТоваровТовары.Ссылка.Дата, ТоварыНаСкладахОстатки.РозничнаяЦена, ТоварыНаСкладахОстатки.Склад ИЗ РегистрНакопления.ТоварыНаСкладах.Остатки( &ДатаОтчета, Склад = &Склад И Номенклатура = &Номенклатура) КАК ТоварыНаСкладахОстатки, Документ.ПоступлениеТоваров.Товары КАК ПоступлениеТоваровТовары ГДЕ (ПоступлениеТоваровТовары.Ссылка, ПоступлениеТоваровТовары.Ссылка.Дата,1) В (ВЫБРАТЬ ПЕРВЫЕ 1 ПоступлениеТоваровТовары.Ссылка КАК Ссылка, ПоступлениеТоваровТовары.Ссылка.Дата КАК ДатаПост, ((ВЫБОР КОГДА ПоступлениеТоваровТовары.Ссылка.Склад = ТоварыНаСкладахОстатки.Склад ТОГДА 2 ИНАЧЕ 0 КОНЕЦ) + (ВЫБОР КОГДА ПоступлениеТоваровТовары.РозничнаяЦена = ТоварыНаСкладахОстатки.РозничнаяЦена ТОГДА 1 ИНАЧЕ 0 КОНЕЦ)) КАК Порядок ИЗ Документ.ПоступлениеТоваров.Товары КАК ПоступлениеТоваровТовары ГДЕ ПоступлениеТоваровТовары.Номенклатура = ТоварыНаСкладахОстатки.Номенклатура И ПоступлениеТоваровТовары.Ссылка.Проведен УПОРЯДОЧИТЬ ПО Порядок УБЫВ, ДатаПост УБЫВ) УПОРЯДОЧИТЬ ПО ТоварыНаСкладахОстатки.Номенклатура.Наименование Смысл запроса: получить последний документ прихода. Т. к. товар может быть получен с другого склада перемещением и переоценен, в условии еще один запрос, в котором это учитывается и введено поле "порядок". Так вот, в таком виде запрос ничего не выдает. Если убираю конструкцию (ВЫБОР КОГДА ПоступлениеТоваровТовары.Ссылка.Склад = ТоварыНаСкладахОстатки.Склад ТОГДА 2 ИНАЧЕ 0 КОНЕЦ) + , тогда запрос результат выдает. Только думает довольно долго. Что изменить в запросе, чтобы он заработал как надо? |
|||
1
Axel2009
15.11.11
✎
16:43
|
я бы умер от кросс джоина такого
|
|||
2
lapatunec
15.11.11
✎
16:48
|
(1) Как по-вашему лучше написать?
|
|||
3
Axel2009
15.11.11
✎
16:52
|
ну хотябы
РегистрНакопления.ТоварыНаСкладах.Остатки( &ДатаОтчета, Склад = &Склад И Номенклатура = &Номенклатура) КАК ТоварыНаСкладахОстатки ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ПоступлениеТоваров.Товары КАК ПоступлениеТоваровТовары ПО ТоварыНаСкладахОстатки.Склад = ПоступлениеТоваровТовары.Ссылка.Склад И ТоварыНаСкладахОстатки.Номенклатура = ПоступлениеТоваровТовары.Номенклатура |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |