0
nk251
08.07.21
✎
14:14
|
Доброго дня, прошу помощи новичку с запросом. Задача следующая: Надо получить последние цены всей реализованной номенклатуры по каждому контрагенту
ВЫБРАТЬ
Продажи.Номенклатура КАК Номенклатура,
Продажи.Контрагент КАК Контрагент,
Продажи.Регистратор.МоментВремени КАК МоментВремени,
Продажи.СтоимостьОборот / Продажи.КоличествоОборот Как Цена
ИЗ
РегистрНакопления.Продажи.Обороты(, &КонПериода, Регистратор) КАК Продажи
ВНУТРЕННЕЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
Продажи.Номенклатура КАК Номенклатура,
МАКСИМУМ(Продажи.Период) КАК Период
ИЗ
РегистрНакопления.Продажи.Обороты(, &КонПериода, Регистратор) КАК Продажи
СГРУППИРОВАТЬ ПО
Продажи.Номенклатура) КАК ВложенныйЗапрос
ПО Продажи.Номенклатура = ВложенныйЗапрос.Номенклатура
И Продажи.Период = ВложенныйЗапрос.Период
Вот так получил просто цены последней номенклатуры но без учета контрагентов
|
|
3
nk251
08.07.21
✎
14:41
|
(1) Спасибо что ткнули носом)
ВЫБРАТЬ
Продажи.Номенклатура КАК Номенклатура,
Продажи.Контрагент КАК Контрагент,
Продажи.Регистратор.МоментВремени КАК МоментВремени,
ВЫБОР
КОГДА ЕСТЬNULL(Продажи.КоличествоОборот, 0) > 0
ТОГДА Продажи.СтоимостьОборот / Продажи.КоличествоОборот
ИНАЧЕ 0
КОНЕЦ КАК Цена
ИЗ
РегистрНакопления.Продажи.Обороты(, &КонПериода, Регистратор, ) КАК Продажи
ВНУТРЕННЕЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
Продажи.Номенклатура КАК Номенклатура,
МАКСИМУМ(Продажи.Период) КАК Период,
Продажи.Контрагент КАК Контрагент
ИЗ
РегистрНакопления.Продажи.Обороты(, &КонПериода, Регистратор, ) КАК Продажи
СГРУППИРОВАТЬ ПО
Продажи.Номенклатура,
Продажи.Контрагент) КАК ВложенныйЗапрос
ПО Продажи.Номенклатура = ВложенныйЗапрос.Номенклатура
И Продажи.Период = ВложенныйЗапрос.Период
УПОРЯДОЧИТЬ ПО
Продажи.Номенклатура
Работает, для наглядности бы еще показали как это красивее и компактнее сделать был бы очень благодарен
|
|