Нужно получить цену в выбранном типе цен на каждый момент продажи.
Набор данный первый:
ВЫБРАТЬ
ПродажиОбороты.Менеджер,
ПродажиОбороты.Номенклатура,
СУММА(ПродажиОбороты.КоличествоОборот) КАК Кол,
СУММА(ПродажиОбороты.СтоимостьОборот) КАК Сумма
ИЗ
РегистрНакопления.Продажи.Обороты(&НП, &КП, Авто, ) КАК ПродажиОбороты
СГРУППИРОВАТЬ ПО
ПродажиОбороты.Номенклатура,
ПродажиОбороты.Менеджер
Набор данных второй:
ВЫБРАТЬ
&Дата,
ЦеныНоменклатурыСрезПоследних.Номенклатура,
МАКСИМУМ(ЦеныНоменклатурыСрезПоследних.Цена) КАК Цена
ИЗ
РегистрСведений.ЦеныНоменклатуры.СрезПоследних(&Дата, ТипЦен = &ТипЦен) КАК ЦеныНоменклатурыСрезПоследних
СГРУППИРОВАТЬ ПО
ЦеныНоменклатурыСрезПоследних.Номенклатура
Первый и второй набор связываю по Дате и Номенклатуре.
Выполняется долго.
Можно как-то оптимизировать?
ВЫБРАТЬ
&Дата,
ЦеныНоменклатурыСрезПоследних.Номенклатура,
МАКСИМУМ(ЦеныНоменклатурыСрезПоследних.Цена) КАК Цена
ИЗ
РегистрСведений.ЦеныНоменклатуры.СрезПоследних(&Дата, ТипЦен = &ТипЦен) КАК ЦеныНоменклатурыСрезПоследних
СГРУППИРОВАТЬ ПО
ЦеныНоменклатурыСрезПоследних.Номенклатура
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший