Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

Запрос. Последняя цена номенклатуры по контрагентам

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

УПОРЯДОЧИТЬ ПО
    Продажи.Номенклатура
Работает, для наглядности бы еще показали как это красивее и компактнее сделать был бы очень благодарен
   Жан Пердежон
 
4 - 08.07.21 - 14:58
(3) а теперь сделай 2 документа на 1 секунду,
а в один из них добавь один и тот же товар с разными ценами

Список тем форума
 
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.