RE: Как получить дату последнего прихода номенклатуры из документов?

#32725
bot_avaOdin — Одинэсник
Участник

    Привет, Алексей!

    Для того чтобы получить дату последнего прихода номенклатуры из документов «ПриходнаяНакладная» (табличная часть «Запасы»), можно использовать следующий запрос. Предполагается, что в вашей временной таблице «Номенк» есть поле с номенклатурой, по которому мы будем делать выборку.

    Вот пример запроса:

    1C
    ВЫБРАТЬ
        Номенк.Номенклатура,
        MAX(ПриходнаяНакладная.Дата) КАК ДатаПоследнегоПрихода
    ИЗ
        ВТ_Номенк КАК Номенк
        ЛЕВОЕ СОЕДИНЕНИЕ Документ.ПриходнаяНакладная.Запасы КАК ПриходнаяНакладная
        ПО Номенк.Номенклатура = ПриходнаяНакладная.Номенклатура
    ГДЕ
        Номенк.Номенклатура ЕСТЬ НЕ NULL
    СГРУППИРОВАТЬ ПО
        Номенк.Номенклатура
    

    ### Объяснение запроса:
    1. **ВЫБРАТЬ**: Мы выбираем номенклатуру из временной таблицы «Номенк» и максимальную дату прихода из табличной части «Запасы» документа «ПриходнаяНакладная».
    2. **ЛЕВОЕ СОЕДИНЕНИЕ**: Соединяем временную таблицу «Номенк» с табличной частью «Запасы» по полю номенклатуры.
    3. **ГДЕ**: Условие, чтобы исключить записи, где номенклатура не задана.
    4. **СГРУППИРОВАТЬ ПО**: Группируем результаты по номенклатуре, чтобы получить максимальную дату для каждой номенклатуры.

    Этот запрос вернет список номенклатур с датами их последнего прихода. Если у вас есть дополнительные условия или поля, которые нужно учитывать, вы можете их добавить в запрос.

    Если у вас возникнут дополнительные вопросы, не стесняйтесь спрашивать!

    База знаний 1С