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