В СКД пишу запрос (ВТ) для объединения с другой таблицей запроса.
Мне нужны минимальные цены номенклатуры и какой контрагент эту цену дал.
Но в реале могут быть у меня по одной минимальной ценой быть несколько контрагентов и при объединении у меня строки задваиваются.
Как вытащить первого попавшегося при равных или тот у которого период (даты цены) больше?
Вот запрос.
ВЫБРАТЬ
ЦеныНоменклатурыКонтрагентов.Номенклатура КАК Номенклатура,
МИНИМУМ(ЦеныНоменклатурыКонтрагентов.Цена) КАК МинЦена,
ЦеныНоменклатурыКонтрагентов.Контрагент КАК Контрагент,
ЦеныНоменклатурыКонтрагентов.Период КАК Период
ПОМЕСТИТЬ МинЦены1
ИЗ
РегистрСведений.ЦеныНоменклатурыКонтрагентов КАК ЦеныНоменклатурыКонтрагентов
ГДЕ
ЦеныНоменклатурыКонтрагентов.Период МЕЖДУ &НачалоМин И &ОкончаниеМин
И ЦеныНоменклатурыКонтрагентов.Валюта = &Валюта
И ЦеныНоменклатурыКонтрагентов.ТипЦены <> &ТипЦеныНеРавно
СГРУППИРОВАТЬ ПО
ЦеныНоменклатурыКонтрагентов.Номенклатура,
ЦеныНоменклатурыКонтрагентов.Контрагент,
ЦеныНоменклатурыКонтрагентов.Период
ИНДЕКСИРОВАТЬ ПО
Номенклатура,
Период,
Контрагент
;
////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
МинЦены1.Номенклатура КАК Номенклатура,
МИНИМУМ(МинЦены1.МинЦена) КАК МинЦена
ПОМЕСТИТЬ МинЦены_2
ИЗ
МинЦены1 КАК МинЦены1
СГРУППИРОВАТЬ ПО
МинЦены1.Номенклатура
ИНДЕКСИРОВАТЬ ПО
Номенклатура,
МинЦена
;
////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
МинЦены1.Номенклатура,
МинЦены1.МинЦена,
МинЦены1.Контрагент,
МинЦены1.Период
ИЗ
МинЦены1 КАК МинЦены1
ВНУТРЕННЕЕ СОЕДИНЕНИЕ МинЦены_2 КАК МинЦены_2
ПО МинЦены1.Номенклатура = МинЦены_2.Номенклатура
И МинЦены1.МинЦена = МинЦены_2.МинЦена