![]() |
![]() |
![]() |
|
Цена номенклатуры на дату документа | ☑ | ||
---|---|---|---|---|
0
MichaelMix
10.07.09
✎
12:08
|
Имеем запрос вида:
ВЫБРАТЬ ПродажиОбороты.Регистратор КАК Регистратор, ПродажиОбороты.Номенклатура ИЗ РегистрНакопления.Продажи.Обороты(&НачПериода, &КонПериода, Регистратор, ) КАК ПродажиОбороты ИТОГИ ПО Регистратор Каким образом можно получить цену (и курс валюты) для каждой номенклатуры в документе на его дату? Что-то я уже совсем запутался... |
|||
1
чувак
10.07.09
✎
12:09
|
А в регистраторе разве нету курс и цена?
|
|||
2
MichaelMix
10.07.09
✎
12:48
|
Цена нужна из регистра ЦеныНоменклатуры (прайсовая).
|
|||
3
73
10.07.09
✎
13:29
|
||||
4
MichaelMix
10.07.09
✎
15:55
|
Если кому-то интересно, то вот что получилось.
Интересно, можно ли его упростить? ВЫБРАТЬ ВложенныйЗапрос.Номенклатура КАК Номенклатура, ВложенныйЗапрос.Регистратор, ВЫРАЗИТЬ(ВложенныйЗапрос.Цена * ЕСТЬNULL(КурсыВалют.Курс, 1) / ЕСТЬNULL(КурсыВалют.Кратность, 1) КАК ЧИСЛО(15, 2)) КАК ЦенаОперативнаяВРублях ИЗ (ВЫБРАТЬ ВложенныйЗапрос.Номенклатура КАК Номенклатура, ВложенныйЗапрос.Регистратор КАК Регистратор, ВложенныйЗапрос.ПериодРегистратор КАК ПериодРегистратор, ЦеныНоменклатуры.Цена КАК Цена, ВложенныйЗапрос.Период КАК Период, ЦеныНоменклатуры.Валюта КАК Валюта ИЗ (ВЫБРАТЬ ПродажиОбороты.Регистратор КАК Регистратор, ПродажиОбороты.Регистратор.Дата КАК РегистраторДата, ПродажиОбороты.Номенклатура КАК Номенклатура, МАКСИМУМ(ЦеныНоменклатуры.Период) КАК Период, НАЧАЛОПЕРИОДА(ПродажиОбороты.Период, ДЕНЬ) КАК ПериодРегистратор ИЗ РегистрНакопления.Продажи.Обороты(&ДатаНач, &ДатаКон, Регистратор, ) КАК ПродажиОбороты ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры КАК ЦеныНоменклатуры ПО (ЦеныНоменклатуры.Период <= ПродажиОбороты.Регистратор.Дата) И (ЦеныНоменклатуры.Номенклатура = ПродажиОбороты.Номенклатура) ГДЕ ЦеныНоменклатуры.ТипЦен = &ТипЦен СГРУППИРОВАТЬ ПО ПродажиОбороты.Регистратор, ПродажиОбороты.Регистратор.Дата, ПродажиОбороты.Номенклатура, НАЧАЛОПЕРИОДА(ПродажиОбороты.Период, ДЕНЬ)) КАК ВложенныйЗапрос ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры КАК ЦеныНоменклатуры ПО ВложенныйЗапрос.Период = ЦеныНоменклатуры.Период И ВложенныйЗапрос.Номенклатура = ЦеныНоменклатуры.Номенклатура ГДЕ ЦеныНоменклатуры.ТипЦен = &ТипЦен) КАК ВложенныйЗапрос ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КурсыВалют КАК КурсыВалют ПО ВложенныйЗапрос.Валюта = КурсыВалют.Валюта И ВложенныйЗапрос.ПериодРегистратор = КурсыВалют.Период ИТОГИ ПО Номенклатура |
|||
5
Пеппи
10.07.09
✎
16:12
|
(4) работает? )
|
|||
6
MichaelMix
10.07.09
✎
16:25
|
(5) Работает.
|
|||
7
MichaelMix
10.07.09
✎
16:31
|
Работает.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |