Имя: Пароль:
1C
1С v8
Выбор минимальной цены в иерахии групп
0 cardexc
 
11.01.13
19:27
Здравствуйте!

Подскажите, пожалуйста, возможные варианты решения задачи:

Есть запрос типа:

ВЫБРАТЬ
   Номенклатура.Ссылка КАК Группа
ПОМЕСТИТЬ ВТГруппы
ИЗ
   Справочник.Номенклатура КАК Номенклатура
ГДЕ
   Номенклатура.ЭтоГруппа
   
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
   ВТГруппы.Группа,
   МИНИМУМ(ВложенныйЗапрос.Цена) КАК Цена,
   ВложенныйЗапрос.Номенклатура
ИЗ
   ВТГруппы КАК ВТГруппы
       ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ РАЗЛИЧНЫЕ
           ЦеныНоменклатурыСрезПоследних.Цена КАК Цена,
           ЦеныНоменклатурыСрезПоследних.Номенклатура КАК Номенклатура,
           ЦеныНоменклатурыСрезПоследних.Номенклатура.Родитель КАК НоменклатураРодитель
       ИЗ
           РегистрСведений.ЦеныНоменклатуры.СрезПоследних КАК ЦеныНоменклатурыСрезПоследних
       ГДЕ
           ЦеныНоменклатурыСрезПоследних.ВидЦены = &ВидЦены) КАК ВложенныйЗапрос
       ПО ВТГруппы.Группа = ВложенныйЗапрос.НоменклатураРодитель

СГРУППИРОВАТЬ ПО
   ВТГруппы.Группа,
   ВложенныйЗапрос.Номенклатура


Задача: выбрать для каждой группы номенклатуры элемент с минимальной ценой. Если цены не повторяются - все ОК, если попадается минимальная цена, которая есть и у другого элемента группы - строки, естественно задваиваются.

Как можно получить нужный результат?
1 cardexc
 
14.01.13
11:02
up?
2 DrShad
 
14.01.13
11:05
а уровень вложенности всегда 2?
3 cardexc
 
14.01.13
11:09
Уровень вложенности групп номенклатуры может быть разный..
4 DrShad
 
14.01.13
11:10
а у тебя только 2 в запросе
5 cardexc
 
14.01.13
11:27
В этом примере да, не стал кидать сюда полный запрос с соединением на 25 групп :)

В оригинальном запросе есть список групп и список элементов, входящие в эти (и подчиненные) группы

Тут пытаюсь понять, как можно осуществить выборку по заданным условиям.