0
ArPlus
17.05.12
✎
23:52
|
Например в типовой УТ надо найти актуальную цену (указанного вида) на дату документа на каждую номенклатуру?
Колонки:
Ссылка документа
Номенклатура
Цена на данную дату
Я что то такое делал, сейчас что то мозги закисли. Не могу сообразить.
|
|
2
ArPlus
18.05.12
✎
07:19
|
ВЫБРАТЬ
ЦеныНоменклатуры.Номенклатура,
ЦеныНоменклатуры.Период КАК ПериодНач,
ЦеныНоменклатуры.Цена * ЕСТЬNULL(ЦеныНоменклатуры.ЕдиницаИзмерения.Коэффициент, 1) КАК Цена,
МИНИМУМ(ЕСТЬNULL(ЦеныНоменклатуры1.Период, &ДатаКон)) КАК ПериодКон,
ЦеныНоменклатуры.Характеристика
ИЗ
РегистрСведений.ЦеныНоменклатуры КАК ЦеныНоменклатуры
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры КАК ЦеныНоменклатуры1
ПО ЦеныНоменклатуры.Номенклатура = ЦеныНоменклатуры1.Номенклатура
И ЦеныНоменклатуры.Период < ЦеныНоменклатуры1.Период
И ЦеныНоменклатуры.Характеристика = ЦеныНоменклатуры1.Характеристика
ГДЕ
ЦеныНоменклатуры.Период МЕЖДУ &ДатаНач И &ДатаКон
И ЦеныНоменклатуры.ВидЦен = &ВидЦен
И ЦеныНоменклатуры1.ВидЦен = &ВидЦен
СГРУППИРОВАТЬ ПО
ЦеныНоменклатуры.Номенклатура,
ЦеныНоменклатуры.Период,
ЦеныНоменклатуры.Характеристика,
ЦеныНоменклатуры.Цена * ЕСТЬNULL(ЦеныНоменклатуры.ЕдиницаИзмерения.Коэффициент, 1)
ОБЪЕДИНИТЬ
ВЫБРАТЬ
ЦеныНоменклатурыСрезПоследних.Номенклатура,
ЦеныНоменклатурыСрезПоследних.Период,
ЦеныНоменклатурыСрезПоследних.Цена * ЕСТЬNULL(ЦеныНоменклатурыСрезПоследних.ЕдиницаИзмерения.Коэффициент, 1),
ЕСТЬNULL(ЦеныНоменклатурыСрезПервых.Период, &ДатаКон),
ЦеныНоменклатурыСрезПоследних.Характеристика
ИЗ
РегистрСведений.ЦеныНоменклатуры.СрезПоследних(&ДатаНач, ВидЦен = &ВидЦен) КАК ЦеныНоменклатурыСрезПоследних
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПервых(&ДатаНач, ВидЦен = &ВидЦен) КАК ЦеныНоменклатурыСрезПервых
ПО ЦеныНоменклатурыСрезПоследних.Период <> ЦеныНоменклатурыСрезПервых.Период
И ЦеныНоменклатурыСрезПоследних.Номенклатура = ЦеныНоменклатурыСрезПервых.Номенклатура
И ЦеныНоменклатурыСрезПоследних.Характеристика = ЦеныНоменклатурыСрезПервых.Характеристика
|
|