Добрый день! Столкнулся с проблемой, что перестала правильно работать функция, после появления регистра срез последних. Конфигурация 1С:Комплексная автоматизация 2 (2.4.5.152) Платформа 1С:Предприятие 8.3 (8.3.14.1779)

Хочу получить цены номенклатуры по Максимальному периоду, но она как будто игнорируется и выдаются все цены всех периодов

```1c
    ВЫБРАТЬ РАЗРЕШЕННЫЕ
    МАКСИМУМ(ЦеныНоменклатуры.Период) КАК Период,
    ЦеныНоменклатуры.Номенклатура КАК Номенклатура,
    ЦеныНоменклатуры.Характеристика КАК Характеристика,
    ЕСТЬNULL(ЦеныНоменклатуры.Цена, 0) КАК Цена
    ИЗ
    РегистрСведений.ЦеныНоменклатуры КАК ЦеныНоменклатуры
    ГДЕ
    ЦеныНоменклатуры.ВидЦены = &ВидЦены
    СГРУППИРОВАТЬ ПО
    ЦеныНоменклатуры.Номенклатура,
    ЦеныНоменклатуры.Характеристика,
    ЕСТЬNULL(ЦеныНоменклатуры.Цена, 0)
```
---
```1c
    ВЫБРАТЬ РАЗРЕШЕННЫЕ
    ЦеныНоменклатуры.Период КАК Период,
    ЦеныНоменклатуры.Номенклатура КАК Номенклатура,
    ЦеныНоменклатуры.Характеристика КАК Характеристика,
    ЕСТЬNULL(ЦеныНоменклатуры.Цена, 0) КАК Цена
    ПОМЕСТИТЬ ВРТ
    ИЗ
    РегистрСведений.ЦеныНоменклатуры КАК ЦеныНоменклатуры
    ГДЕ
    ЦеныНоменклатуры.ВидЦены = &ВидЦены

    СГРУППИРОВАТЬ ПО
    ЦеныНоменклатуры.Номенклатура,
    ЦеныНоменклатуры.Характеристика,
    ЕСТЬNULL(ЦеныНоменклатуры.Цена, 0),
    ЦеныНоменклатуры.Период
    ;

    ////////////////////////////////////////////////////////////­////////////////////
    ВЫБРАТЬ
    МАКСИМУМ(ВРТ.Период) КАК Период,
    ВРТ.Номенклатура КАК Номенклатура,
    ВРТ.Характеристика КАК Характеристика
    ПОМЕСТИТЬ МаксимальныйПериод
    ИЗ
    ВРТ КАК ВРТ

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

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

    СГРУППИРОВАТЬ ПО
    ЦеныНоменклатуры.Номенклатура,
    ЦеныНоменклатуры.Характеристика,
    ЕСТЬNULL(ЦеныНоменклатуры.Цена, 0),
    ЦеныНоменклатуры.Период
    ;

    ////////////////////////////////////////////////////////////­////////////////////
    ВЫБРАТЬ
    МАКСИМУМ(ВРТ.Период) КАК Период,
    ВРТ.Номенклатура КАК Номенклатура,
    ВРТ.Характеристика КАК Характеристика
    ПОМЕСТИТЬ МаксимальныйПериод
    ИЗ
    ВРТ КАК ВРТ

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

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

Тогда заголовок должен был быть примерно таким
Как в запросе получить максимальные цены в периоде по виду цен

тогда понятно, что вопрос не в ошибках СУБД, а просто автор хочет совета по реализации логики запроса.