Добрый день уважаемые форумчане !!!
прошу помощи у гуру

сделал такой запрос

```1c
    ВЫБРАТЬ ПЕРВЫЕ 1
    ПродажиОбороты.Номенклатура,
    ПродажиОбороты.Характеристика,
    ПродажиОбороты.КоличествоОборот,
    ПродажиОбороты.ДокументПродажи,
    ПродажиОбороты.ДокументПродажи.Дата КАК ДокументПродажиДата
    ИЗ
    РегистрНакопления.Продажи.Обороты КАК ПродажиОбороты
    ГДЕ
    ПродажиОбороты.Номенклатура = &Номенклатура

    УПОРЯДОЧИТЬ ПО
    ДокументПродажиДата УБЫВ
```

который меня устравивает в рамках одной номенклатуры ...
но мне нужно без

ГДЕ
 ПродажиОбороты.Номенклатура = &Номенклатура

но чтобы запрос показывал каждую номенклатуру когда она последний раз продавалась (без разницы какой характеристики)

то есть

Брюки 111 размер XL - последний раз были проданы 01 01 2021 - регистратор такой то
Кофрта 444 размер M - последний раз были проданы 02 02 2021 - регистратор такой то

Итд ... как получить такой запрос ???
---
Не нравятся мне все эти виртуальные таблицы регистров. Потому стараюсь их не использовать.
В данном случае возможен такой вариант решения:
1) Отобрать все номенклатуры с последней датой продажи. Временная таблица "ВТ_ДатыПоследнейПродажи" из текста запроса

2) Отобрать последние документы продажи по этой номенклатуре на последнюю дату. Временная таблица "ВТ_ПоследнийДокументПродажи" из текста запроса. Это на случай, если по одной номенклатуре может быть более одного документа на одну и ту же ДатуВремя. Если такого не бывает, то можно и не делать.

3) Выбрать остальные нужные данные из регистра. В данном случае "Характеристика". Суммирование по количеству (Сумма(Продажи.Количество) КАК КоличествоОборот) делается на случай, если в документе может быть несколько строк по одной номенклатуре с одинаковой характеристикой. Следует иметь ввиду, если в документе продажи будет несколько строк с одинаковой номенклатурой, но с разными характеристиками, то в выборке будет несколько строк по этой номенклатуре.
Например: а) Брюки 111 размер XL б) Брюки 111 размер L.
Чтобы этого не было, нужно будет убрать получение характеристики.

Текст запроса:

```1c
    ВЫБРАТЬ
    Продажи.Номенклатура КАК Номенклатура,
    МАКСИМУМ(Продажи.Период) КАК ДатаВремяПоследнейПродажи
    ПОМЕСТИТЬ ВТ_ДатыПоследнейПродажи
    ИЗ
    РегистрНакопления.Продажи КАК Продажи

    СГРУППИРОВАТЬ ПО
    Продажи.Номенклатура
    ;

    ////////////////////////////////////////////////////////////­////////////////////
    ВЫБРАТЬ
    ВТ_ДатыПоследнейПродажи.Номенклатура КАК Номенклатура,
    ВТ_ДатыПоследнейПродажи.ДатаВремяПоследнейПродажи КАК ДатаВремяПоследнейПродажи,
    МАКСИМУМ(Продажи.Регистратор) КАК ПоследнийДокументПродажи
    ПОМЕСТИТЬ ВТ_ПоследнийДокументПродажи
    ИЗ
    ВТ_ДатыПоследнейПродажи КАК ВТ_ДатыПоследнейПродажи
    ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.Продажи КАК Продажи
    ПО ВТ_ДатыПоследнейПродажи.Номенклатура = Продажи.Номенклатура
    И ВТ_ДатыПоследнейПродажи.ДатаВремяПоследнейПродажи = Продажи.Период

    СГРУППИРОВАТЬ ПО
    ВТ_ДатыПоследнейПродажи.Номенклатура,
    ВТ_ДатыПоследнейПродажи.ДатаВремяПоследнейПродажи
    ;

    ////////////////////////////////////////////////////////////­////////////////////
    ВЫБРАТЬ
    ВТ_ПоследнийДокументПродажи.Номенклатура КАК Номенклатура,
    ВТ_ПоследнийДокументПродажи.ДатаВремяПоследнейПродажи КАК ДатаВремяПоследнейПродажи,
    ВТ_ПоследнийДокументПродажи.ПоследнийДокументПродажи КАК ПоследнийДокументПродажи,
    Продажи.Характеристика КАК ХарактеристикаНоменклатуры,
    Сумма(Продажи.Количество) КАК КоличествоОборот
    ИЗ
    ВТ_ПоследнийДокументПродажи КАК ВТ_ПоследнийДокументПродажи
    ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.Продажи КАК Продажи
    ПО ВТ_ПоследнийДокументПродажи.Номенклатура = Продажи.Номенклатура
    И ВТ_ПоследнийДокументПродажи.ДатаВремяПоследнейПродажи = Продажи.Период
    И ВТ_ПоследнийДокументПродажи.ПоследнийДокументПродажи = Продажи.Регистратор
    СГРУППИРОВАТЬ ПО
    ВТ_ПоследнийДокументПродажи.Номенклатура,
    ВТ_ПоследнийДокументПродажи.ДатаВремяПоследнейПродажи,
    ВТ_ПоследнийДокументПродажи.ПоследнийДокументПродажи,
    Продажи.Характеристика
```
---
как получить такой запрос ??? Такой запрос получить нельзя. Его можно только написать буквами.
---
Во вложенном запросе группируешь по номенклатуре и максимальной дате продажи, затем выборку по всей таблице с отбором по этой паре значений.
---
в одну дату-время может быть несколько документов продажи.
---
Не большая проблема. группировка по номенклатуре и максимум регистратор.
---
регистратором может являться документ не связанный с продажей. Например, корректировка реализации или возврат от покупателя.
---
Да такой запрос можно написать только ручками, к сожалению
---
Не нравятся мне все эти виртуальные таблицы регистров. Потому стараюсь их не использовать.
В данном случае возможен такой вариант решения:
1) Отобрать все номенклатуры с последней датой продажи. Временная таблица "ВТ_ДатыПоследнейПродажи" из текста запроса

2) Отобрать последние документы продажи по этой номенклатуре на последнюю дату. Временная таблица "ВТ_ПоследнийДокументПродажи" из текста запроса. Это на случай, если по одной номенклатуре может быть более одного документа на одну и ту же ДатуВремя. Если такого не бывает, то можно и не делать.

3) Выбрать остальные нужные данные из регистра. В данном случае "Характеристика". Суммирование по количеству (Сумма(Продажи.Количество) КАК КоличествоОборот) делается на случай, если в документе может быть несколько строк по одной номенклатуре с одинаковой характеристикой. Следует иметь ввиду, если в документе продажи будет несколько строк с одинаковой номенклатурой, но с разными характеристиками, то в выборке будет несколько строк по этой номенклатуре.
Например: а) Брюки 111 размер XL б) Брюки 111 размер L.
Чтобы этого не было, нужно будет убрать получение характеристики.

Текст запроса:

```1c
    ВЫБРАТЬ
    Продажи.Номенклатура КАК Номенклатура,
    МАКСИМУМ(Продажи.Период) КАК ДатаВремяПоследнейПродажи
    ПОМЕСТИТЬ ВТ_ДатыПоследнейПродажи
    ИЗ
    РегистрНакопления.Продажи КАК Продажи

    СГРУППИРОВАТЬ ПО
    Продажи.Номенклатура
    ;

    ////////////////////////////////////////////////////////////­////////////////////
    ВЫБРАТЬ
    ВТ_ДатыПоследнейПродажи.Номенклатура КАК Номенклатура,
    ВТ_ДатыПоследнейПродажи.ДатаВремяПоследнейПродажи КАК ДатаВремяПоследнейПродажи,
    МАКСИМУМ(Продажи.Регистратор) КАК ПоследнийДокументПродажи
    ПОМЕСТИТЬ ВТ_ПоследнийДокументПродажи
    ИЗ
    ВТ_ДатыПоследнейПродажи КАК ВТ_ДатыПоследнейПродажи
    ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.Продажи КАК Продажи
    ПО ВТ_ДатыПоследнейПродажи.Номенклатура = Продажи.Номенклатура
    И ВТ_ДатыПоследнейПродажи.ДатаВремяПоследнейПродажи = Продажи.Период

    СГРУППИРОВАТЬ ПО
    ВТ_ДатыПоследнейПродажи.Номенклатура,
    ВТ_ДатыПоследнейПродажи.ДатаВремяПоследнейПродажи
    ;

    ////////////////////////////////////////////////////////////­////////////////////
    ВЫБРАТЬ
    ВТ_ПоследнийДокументПродажи.Номенклатура КАК Номенклатура,
    ВТ_ПоследнийДокументПродажи.ДатаВремяПоследнейПродажи КАК ДатаВремяПоследнейПродажи,
    ВТ_ПоследнийДокументПродажи.ПоследнийДокументПродажи КАК ПоследнийДокументПродажи,
    Продажи.Характеристика КАК ХарактеристикаНоменклатуры,
    Сумма(Продажи.Количество) КАК КоличествоОборот
    ИЗ
    ВТ_ПоследнийДокументПродажи КАК ВТ_ПоследнийДокументПродажи
    ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.Продажи КАК Продажи
    ПО ВТ_ПоследнийДокументПродажи.Номенклатура = Продажи.Номенклатура
    И ВТ_ПоследнийДокументПродажи.ДатаВремяПоследнейПродажи = Продажи.Период
    И ВТ_ПоследнийДокументПродажи.ПоследнийДокументПродажи = Продажи.Регистратор
    СГРУППИРОВАТЬ ПО
    ВТ_ПоследнийДокументПродажи.Номенклатура,
    ВТ_ПоследнийДокументПродажи.ДатаВремяПоследнейПродажи,
    ВТ_ПоследнийДокументПродажи.ПоследнийДокументПродажи,
    Продажи.Характеристика
```
---
Временная таблица "ВТ_ДатыПоследнейПродажи"
я не уверен что это будет последняя дата именно продажи. Если по реализации будет возврат, то и дата возьмется возврата, а не продажи
---
Да, это возможно. Тогда нужно добавить условие :

```1c
    //...
    ГДЕ
    НЕ Продажи.Регистратор ССЫЛКА Документ.Возврат
    ...
```
---
тогда уж проще однозначно определить документ продажи, чем прописывать все документы исключения))
---
не нравятся мне все эти виртуальные таблицы регистров. Потому стараюсь их не использовать.
- Спасибо да то что надо ...
Умный вы мужик Владимир ...