|   |   | 
| 
 | Получить запросом последний документ | ☑ | ||
|---|---|---|---|---|
| 0
    
        bebibo 12.04.24✎ 16:02 | 
        Здравствуйте!
 Подскажите пожалуйста. Запросом получаю все продажи (регистр) ,вытаскиваю оттуда номенклатуру ,сумму и количество. Далее мне нужно получить из документа "Поступление товаров и услуг" ставку НДС по данной номенклатуре. И получить нужно не на дату продажи, а на самую последнюю дату. то есть было поступление товара 10.04 со ставкой 18% ,и было поступление 11.04 со ставкой 20% ндс. Мне нужен документ от 11.04, со ставкой 20% Вот подскажите, как мне взять этот самый последний документ? | |||
| 1
    
        maxab72 12.04.24✎ 16:03 | 
        ВЫБРАТЬ ПЕРВЫЕ 1
 СОРТИРОВАТЬ ПО МойДокумент.Дата УБЫВ | |||
| 2
    
        Кондер 12.04.24✎ 16:07 | 
        Бессмысленно, нужна партия     | |||
| 3
    
        bebibo 12.04.24✎ 16:08 | 
        (1) не работает. Выбрать первые берет 1 позицию. А у меня продаж то не одна строка     | |||
| 4
    
        maxab72 12.04.24✎ 16:10 | 
        (3) А сколько надо? Задавайте правильный вопрос - получите требуемый ответ.     | |||
| 5
    
        yopQua 12.04.24✎ 16:12 | 
        (0) максимум по дате, потом соединение     | |||
| 6
    
        bebibo 12.04.24✎ 16:23 | 
        (5) всё равно несколько строк выдаёт. Было 2 поступления, 2 строки и выдает     | |||
| 7
    
        bebibo 12.04.24✎ 16:24 | 
        (4) нужен последний документ по номенклатуре каждой     | |||
| 8
    
        arsik 12.04.24✎ 16:30 | 
        (7) Вот как то так :)
 https://imgur.com/z71r9az | |||
| 9
    
        youalex 12.04.24✎ 16:31 | 
        (6) у поступлений одинаковая дата? 
 показывай запрос | |||
| 10
    
        Мультук 12.04.24✎ 16:31 | 
        (0) 
 1) Запрос в цикле, да плохо - mista высказывает своё фу, но позволяет получить результат, после оценки которого произойдет сюжетный твист в тех.задании (если оно конечно есть) 2) Можно построить сначала временную таблицу ВТ_ПОСЛЕДНИЕ_ПОСТУПЛЕНИЯ с колонками: Номенклатура СтавкаНДС ДокуменПоступленияЧистоЧтобыБыл В (5) подсказали как, но... 3) Что будешь делать если например на 31.03.2023 23:59:59 по номенклатуре "НекийТовар" Будет три поступления БезНДС 18% 20% Какая из ставок будет "правильная" ? | |||
| 11
    
        arsik 12.04.24✎ 16:35 | 
        (10)  3) Что будешь делать если например на 31.03.2023 23:59:59 по номенклатуре "НекийТовар"
 Будет три поступления БезНДС 18% 20% И ежу понятно, что такого быть не может | |||
| 12
    
        СвинТуз 12.04.24✎ 16:37 | 
        (0)
 Примерно такое часто спрашивают на собеседованиях. Хорошо бы понять как делается. | |||
| 13
    
        СвинТуз 12.04.24✎ 16:39 | 
        (0)
 У Радченко насколько я помню подобный пример был в его самой массовой книге. | |||
| 14
    
        bebibo 12.04.24✎ 16:47 | 
        (9) данный запрос в первой таблице выдаёт все поступления по выбранной номенклатуре. Во второй таблице получается получить последний документ по дате, но когда я добавляю после ставка, строки становится две.
 Третий пакет соответственно дублирует всё по 2 раза. ВЫБРАТЬ ПоступлениеТоваровТовары.Номенклатура КАК Номенклатура, ПоступлениеТоваровТовары.СтавкаНДС КАК СтавкаНДС, ПоступлениеТоваровТовары.Ссылка.Дата КАК Дата ПОМЕСТИТЬ втПоступления ИЗ Документ.ПоступлениеТоваров.Товары КАК ПоступлениеТоваровТовары ГДЕ ПоступлениеТоваровТовары.Номенклатура = &Номенклатура ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ втПоступления.Номенклатура КАК Номенклатура, МАКСИМУМ(втПоступления.Дата) КАК Дата, втПоступления.СтавкаНДС КАК СтавкаНДС ПОМЕСТИТЬ втПоследниеДокументы ИЗ втПоступления КАК втПоступления ГДЕ втПоступления.Номенклатура = &Номенклатура СГРУППИРОВАТЬ ПО втПоступления.Номенклатура, втПоступления.СтавкаНДС ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ втПоступления.Номенклатура КАК Номенклатура, втПоступления.СтавкаНДС КАК СтавкаНДС ИЗ втПоступления КАК втПоступления внутреннее СОЕДИНЕНИЕ втПоследниеДокументы КАК втПоследниеДокументы ПО втПоступления.Номенклатура = втПоследниеДокументы.Номенклатура | |||
| 15
    
        bebibo 12.04.24✎ 16:51 | 
        Вот вроде заработало
 ВЫБРАТЬ ПоступлениеТоваровТовары.Номенклатура КАК Номенклатура, ПоступлениеТоваровТовары.СтавкаНДС КАК СтавкаНДС, ПоступлениеТоваровТовары.Ссылка.Дата КАК Дата ПОМЕСТИТЬ втПоступления ИЗ Документ.ПоступлениеТоваров.Товары КАК ПоступлениеТоваровТовары ГДЕ ПоступлениеТоваровТовары.Номенклатура = &Номенклатура ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ втПоступления.Номенклатура КАК Номенклатура, МАКСИМУМ(втПоступления.Дата) КАК Дата ПОМЕСТИТЬ втПоследниеДокументы ИЗ втПоступления КАК втПоступления ГДЕ втПоступления.Номенклатура = &Номенклатура СГРУППИРОВАТЬ ПО втПоступления.Номенклатура ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ втПоступления.Номенклатура КАК Номенклатура, втПоступления.СтавкаНДС КАК СтавкаНДС ИЗ втПоступления КАК втПоступления ВНУТРЕННЕЕ СОЕДИНЕНИЕ втПоследниеДокументы КАК втПоследниеДокументы ПО (втПоступления.Номенклатура = втПоследниеДокументы.Номенклатура И втПоступления.Дата = втПоследниеДокументы.Дата) | |||
| 16
    
        bebibo 12.04.24✎ 16:52 | 
        Только теперь сейчас попробую всё это связать с регистром продаж     | |||
| 17
    
        СвинТуз 12.04.24✎ 16:54 | 
        (0)
 Я Вам сейчас в Ваш документ две строки помещу номенклатуры с разными ставками НДС. Что делать будете? Еще одного взломали. Не верю что после 5 лет можно такое писать. | |||
| 18
    
        СвинТуз 12.04.24✎ 16:55 | 
        (15)
 Таки открыли Радченко? Как оттуда срисовано. | |||
| 19
    
        d4rkmesa 12.04.24✎ 17:00 | 
        (3) Мне кажется, это намек на коррелируемый запрос.     | |||
| 20
    
        СвинТуз 12.04.24✎ 17:01 | 
        (15) (17)
 Только видимо номенклатура должна быть в каком то списке. И то что в (15) может двоить строки потенциально. Если в документе будет две строки по одной номенклатуре с разными ставками. А так ... БИНГО! | |||
| 21
    
        СвинТуз 12.04.24✎ 17:03 | 
        (20)
 И ... Дата это не комильфо. По одной дате можно больше одного документа получить. Это Вам не регистр сведений. | |||
| 22
    
        СвинТуз 12.04.24✎ 17:04 | 
        А так же признак проведения. Или хотя бы отсутствие пометки удаления.
 Средней паршивости код. | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |