Выбрать Первые 1 в СКД

1. MARISHA_Viktoria 35 09.07.22 14:16 Сейчас в теме
Добрый день. Конфигурация УТ 11. Кто знает как в СКД получить первую запись из запроса?
Необходимо вывести последнюю закупочную цену. Среза последних в закупках нет. Делаю запрос. В консоли работает, в СКД нет.
ВЫБРАТЬ РАЗЛИЧНЫЕ ПЕРВЫЕ 1
    ВложенныйЗапрос.РегистраторДата КАК РегистраторДата,
    СУММА(ВложенныйЗапрос.ЦенаЗакуп) КАК ЦенаЗакуп,
    ВложенныйЗапрос.Сумма КАК Сумма,
    СУММА(ВложенныйЗапрос.Количество) КАК Количество,
    ВложенныйЗапрос.Номенклатура КАК Номенклатура
ПОМЕСТИТЬ ВТ_ЦЕНА
ИЗ
    (ВЫБРАТЬ
        СУММА(Закупки.Количество) КАК Количество,
        Закупки.Сумма КАК Сумма,
        Закупки.Регистратор КАК Документ,
        Закупки.Подразделение КАК Подразделение,
        СУММА(Закупки.Сумма / Закупки.Количество) КАК ЦенаЗакуп,
        Закупки.АналитикаУчетаНоменклатуры.Номенклатура КАК Номенклатура,
        Закупки.Регистратор.Дата КАК РегистраторДата
    ИЗ
        РегистрНакопления.Закупки КАК Закупки
    ГДЕ
        Закупки.Период <= &ДатаКон
    
    СГРУППИРОВАТЬ ПО
        Закупки.АналитикаУчетаНоменклатуры.Номенклатура,
        Закупки.Подразделение,
        Закупки.Сумма,
        Закупки.Регистратор,
        Закупки.Регистратор.Дата) КАК ВложенныйЗапрос
ГДЕ
    ВложенныйЗапрос.Номенклатура = &Номенклатура

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

УПОРЯДОЧИТЬ ПО
    ВложенныйЗапрос.РегистраторДата УБЫВ
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
    ВТ_ЦЕНА.РегистраторДата КАК РегистраторДата,
    ВТ_ЦЕНА.ЦенаЗакуп КАК ЦенаЗакуп,
    ВТ_ЦЕНА.Сумма КАК Сумма,
    ВТ_ЦЕНА.Количество КАК Количество,
    ВТ_ЦЕНА.Номенклатура КАК Номенклатура
ИЗ
    ВТ_ЦЕНА КАК ВТ_ЦЕНА

СГРУППИРОВАТЬ ПО
    ВТ_ЦЕНА.РегистраторДата,
    ВТ_ЦЕНА.Сумма,
    ВТ_ЦЕНА.Номенклатура,
    ВТ_ЦЕНА.ЦенаЗакуп,
    ВТ_ЦЕНА.Количество
Показать


Знающие люди, помогите. Мозги кипят. Что еще не нравится СКД?
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
3. spacecraft 09.07.22 16:01 Сейчас в теме
(1) хмм. зачем такие сложности?
Все проще:
ВЫБРАТЬ
    Закупки.Период КАК Период,
    Закупки.АналитикаУчетаНоменклатуры.Номенклатура КАК Номенклатура,
    Закупки.Количество КАК Количество,
    Закупки.Сумма КАК Сумма,
    ВЫРАЗИТЬ(ВЫБОР
            КОГДА Закупки.Количество = 0
                ТОГДА 0
            ИНАЧЕ Закупки.Сумма / Закупки.Количество
        КОНЕЦ КАК ЧИСЛО(15, 2)) КАК Цена
ИЗ
    (ВЫБРАТЬ
    МАКСИМУМ(Закупки.Период) КАК Период,
    Закупки.АналитикаУчетаНоменклатуры.Номенклатура КАК Номенклатура
ИЗ
    РегистрНакопления.Закупки КАК Закупки
ГДЕ
    Закупки.АналитикаУчетаНоменклатуры.Номенклатура = &Номенклатура
    И Закупки.Период <= &ДатаОкончания

СГРУППИРОВАТЬ ПО
    Закупки.АналитикаУчетаНоменклатуры.Номенклатура) КАК ВложенныйЗапрос
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.Закупки КАК Закупки
        ПО (Закупки.Период = ВложенныйЗапрос.Период)
            И ВложенныйЗапрос.Номенклатура = Закупки.АналитикаУчетаНоменклатуры.Номенклатура
Показать
2. ImHunter 333 09.07.22 14:56 Сейчас в теме
(1) А что не работает-то? Ошибка, не выдает данные, выдает несколько строк?
5. MARISHA_Viktoria 35 11.07.22 07:25 Сейчас в теме
4. MARISHA_Viktoria 35 11.07.22 07:25 Сейчас в теме
Не выводились данные в таблицу, если выбрать первые записи, отсортированные по дате, на убывание. Запрос отрабатывал нормально, в консоли было видно, но в отчете небыло ничего. Пришлось отчет переписывать. Глюк какой-то
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот