|
Выборка последних цен из документа ПоступлениеТоваровУслуг. ЗАПРОСЫ | ☑ | ||
---|---|---|---|---|
0
1cOren
06.06.14
✎
08:24
|
День добрый. Ситуация:
Клиенту необходимо сформировать отчет о Валовой прибыли. Для этого мне необходимо получить цены закупочные и розничные. С розничными проблем нет. Берутся из РН ЦеныНомнклатуры.СрезПоследних Проблема с ценами закупочными. Дело в том, что клиент у документе УстановкаЦенНоменклатуры указывал закупочную цену в 1 руб. Зачем? Не понятно. В итоге закупочные цены можно получить из документа ПоступлениеТоваровУслуг.Товары Следующий запрос выбирает номенклатуры с ценами из всех существующих документов: ВЫБРАТЬ ПоступлениеТоваровУслугТовары.Номенклатура КАК Номенклатура, ПоступлениеТоваровУслугТовары.Ссылка.Дата КАК Дата, ПоступлениеТоваровУслугТовары.Цена КАК Цена ИЗ Документ.ПоступлениеТоваровУслуг.Товары КАК ПоступлениеТоваровУслугТовары СГРУППИРОВАТЬ ПО ПоступлениеТоваровУслугТовары.Номенклатура, ПоступлениеТоваровУслугТовары.Ссылка.Дата, ПоступлениеТоваровУслугТовары.Цена УПОРЯДОЧИТЬ ПО Номенклатура, Дата, Цена Соответственно получается по несколько разных цен, на одну номенклатуру, а мне нужны цены самые последние. Как прописать условие отбора, чтобы данный запрос выводил самую последнюю закупочную цену для каждой номенклатуры? |
|||
1
shuhard
06.06.14
✎
08:29
|
(0) группировкой по номенклатуре получить максимум даты и соединить с первичной таблицей по номенклатуре и дате
|
|||
2
1cOren
06.06.14
✎
08:46
|
(1) Запрос получился вот такой:
ВЫБРАТЬ ПоступлениеТоваровУслугТовары.Номенклатура КАК Номенклатура, МАКСИМУМ(ПоступлениеТоваровУслугТовары.Ссылка.Дата) КАК ДатаЗакупки, ПоступлениеТоваровУслугТовары.Цена КАК Цена ИЗ Документ.ПоступлениеТоваровУслуг.Товары КАК ПоступлениеТоваровУслугТовары СГРУППИРОВАТЬ ПО ПоступлениеТоваровУслугТовары.Номенклатура, ПоступлениеТоваровУслугТовары.Цена УПОРЯДОЧИТЬ ПО Номенклатура Группировать только по Номенклатуре не получается. Конструктор автоматически добавляет в группировку цену. В итоге записей отобралось в половину меньше, но все равно есть дубли номенклатур с разными ценаим |
|||
3
shuhard
06.06.14
✎
08:46
|
(2) внимательно читаем (1)
изучаем временные таблицы и подзапросы |
|||
4
1cOren
06.06.14
✎
08:54
|
Нашел закупочные цены в РН ЦеныНоменклатурыКонтрагентов. Думаю оттуда вытащу.
|
|||
5
el7cartel
06.06.14
✎
09:04
|
(3) он плохой ученик! 2 нах
|
|||
6
1cOren
06.06.14
✎
09:23
|
(5) За речью свой следи. Ты что ли сразу с со знаниями и опытом родился? Когда спросят твое мнение, тогда и отвечай ПО СУЩЕСТВУ.
|
|||
7
1cOren
09.06.14
✎
14:45
|
Вот этот запрос выдает необходимый результат.
Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | ПоступлениеТоваровУслугТовары.Номенклатура КАК Номенклатура, | МАКСИМУМ(ПоступлениеТоваровУслугТовары.Ссылка.Дата) КАК Дата, | ПоступлениеТоваровУслугТовары.Цена КАК Цена |ИЗ | (ВЫБРАТЬ | ПоступлениеТоваровУслугТовары.Номенклатура КАК Номенклатура, | МАКСИМУМ(ПоступлениеТоваровУслугТовары.Ссылка.Дата) КАК Дата | ИЗ | Документ.ПоступлениеТоваровУслуг.Товары КАК ПоступлениеТоваровУслугТовары | | СГРУППИРОВАТЬ ПО | ПоступлениеТоваровУслугТовары.Номенклатура) КАК ХЗ | | ЛЕВОЕ СОЕДИНЕНИЕ Документ.ПоступлениеТоваровУслуг.Товары КАК ПоступлениеТоваровУслугТовары | ПО (ПоступлениеТоваровУслугТовары.Номенклатура = ХЗ.Номенклатура) | И (ПоступлениеТоваровУслугТовары.Ссылка.Дата = ХЗ.Дата) | |СГРУППИРОВАТЬ ПО | ПоступлениеТоваровУслугТовары.Номенклатура, | ПоступлениеТоваровУслугТовары.Цена | |УПОРЯДОЧИТЬ ПО | Номенклатура"; Результат = Запрос.Выполнить(); |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |