Выборка цен контрагентов вне зависимости от типа цен.
08.11.2012
08:01
#1
Здравствуйте. Вот тут не как не допетрю как ухитриться с запросом. Есть регистр "Цены номенклатуры Контрагентов" когда делаю выборку из регистра то выдаёт несколько позиций номенклатуры с разными ценами. Делаю СрезПоследних на дату. Как бы подходило в случая если бы мне нужна была выборку ещё и по типу цен,но в этом случае она на нужна. Просто нужно выбрать самые последние цены на Дату вне зависимости от типа цен.
P.S: Варианты с Максимум не подходят,цены может меняться в любую сторону.
Вот сам текст запроса:
ВЫБРАТЬ ТоварыВРозницеОстатки.Номенклатура КАК Номенклатура, ТоварыВРозницеОстатки.КоличествоОстаток, ЦеныНоменклатурыКонтрагентовСрезПоследних.Цена, ЦеныНоменклатурыКонтрагентовСрезПоследних.ТипЦенИЗ РегистрНакопления.ТоварыВРознице.Остатки(&ДатаКонца, Склад = &Склад) КАК ТоварыВРозницеОстатки ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатурыКонтрагентов.СрезПоследних(&ДатаКонца, ) КАК ЦеныНоменклатурыКонтрагентовСрезПоследних ПО ТоварыВРозницеОстатки.Номенклатура = ЦеныНоменклатурыКонтрагентовСрезПоследних.Номенклатура И ТоварыВРозницеОстатки.Склад = ЦеныНоменклатурыКонтрагентовСрезПоследних.Склад
УПОРЯДОЧИТЬ ПО НоменклатураАВТОУПОРЯДОЧИВАНИЕ
P.S: Варианты с Максимум не подходят,цены может меняться в любую сторону.
Вот сам текст запроса:
ВЫБРАТЬ ТоварыВРозницеОстатки.Номенклатура КАК Номенклатура, ТоварыВРозницеОстатки.КоличествоОстаток, ЦеныНоменклатурыКонтрагентовСрезПоследних.Цена, ЦеныНоменклатурыКонтрагентовСрезПоследних.ТипЦенИЗ РегистрНакопления.ТоварыВРознице.Остатки(&ДатаКонца, Склад = &Склад) КАК ТоварыВРозницеОстатки ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатурыКонтрагентов.СрезПоследних(&ДатаКонца, ) КАК ЦеныНоменклатурыКонтрагентовСрезПоследних ПО ТоварыВРозницеОстатки.Номенклатура = ЦеныНоменклатурыКонтрагентовСрезПоследних.Номенклатура И ТоварыВРозницеОстатки.Склад = ЦеныНоменклатурыКонтрагентовСрезПоследних.Склад
УПОРЯДОЧИТЬ ПО НоменклатураАВТОУПОРЯДОЧИВАНИЕ
08.11.2012
09:36
#2
> ТоварыВРозницеОстатки.Склад = ЦеныНоменклатурыКонтрагентовСрезПоследних.Склад
Откуда это в регистре "ЦеныНоменклатурыКонтрагентов" "Склад" взялся? Что это за конфигурация? Какая взаимосвязь склада с ценами вообще?
Откуда это в регистре "ЦеныНоменклатурыКонтрагентов" "Склад" взялся? Что это за конфигурация? Какая взаимосвязь склада с ценами вообще?
08.11.2012
09:39
#3
Склад это добавленое измерение,Комплексная переделаная. От этого суть не меняется.
08.11.2012
09:46
#4
> От этого суть не меняется.
Пусть не меняется. Но объясните логику такого измерения. Изначально предполагается, что регистр хранит цены внешних контрагентов. Даже не могу представить, что это такое - цена какой-то организации на моем складе. Т.е. пришел ко мне представитель какой-то фирмы на склад и предложил одну цену, а если пришел на другой склад, то другую?
И, собственно, сама структура данных Вам вернет значения:
Товар1 (из остатка) - Цена1
Товар1 (из остатка) - Цена2
Товар1 (из остатка) - Цена3
Товар2 (из остатка) - Цена1
Товар2 (из остатка) - Цена2
т.е. одной цены быть не может, т.к. там их уже несколько.
Пусть не меняется. Но объясните логику такого измерения. Изначально предполагается, что регистр хранит цены внешних контрагентов. Даже не могу представить, что это такое - цена какой-то организации на моем складе. Т.е. пришел ко мне представитель какой-то фирмы на склад и предложил одну цену, а если пришел на другой склад, то другую?
И, собственно, сама структура данных Вам вернет значения:
Товар1 (из остатка) - Цена1
Товар1 (из остатка) - Цена2
Товар1 (из остатка) - Цена3
Товар2 (из остатка) - Цена1
Товар2 (из остатка) - Цена2
т.е. одной цены быть не может, т.к. там их уже несколько.
08.11.2012
09:52
#5
Склад подразумевается как магазин.А магазинов у нас много.
Возращаемое значение
Склад1-Номенклатура -ТипЦен1-55р
Склад1-Номенклатура -ТипЦен2-66р
Склад1-Номенклатура -ТипЦен3-85р
Нужно выбирать только 85р. т.е последнию запись.
p.s пока что прокатывал вариант использования функции которая тупо и глупо берет последнию запись. Но для каждой позиции применять функцию когда речь идет о больших обьемах не приемлимый вариант.
Возращаемое значение
Склад1-Номенклатура -ТипЦен1-55р
Склад1-Номенклатура -ТипЦен2-66р
Склад1-Номенклатура -ТипЦен3-85р
Нужно выбирать только 85р. т.е последнию запись.
p.s пока что прокатывал вариант использования функции которая тупо и глупо берет последнию запись. Но для каждой позиции применять функцию когда речь идет о больших обьемах не приемлимый вариант.
08.11.2012
10:17
#6
> А магазинов у нас много.
Блджад! А причем здесь ваши магазины и сторонние контрагенты? Вы в курсе как цены в рознице появляются вообще? И почему это цена 85 руб это "последняя цена", как мы это можем понять?
Блджад! А причем здесь ваши магазины и сторонние контрагенты? Вы в курсе как цены в рознице появляются вообще? И почему это цена 85 руб это "последняя цена", как мы это можем понять?
08.11.2012
10:34
#7
Так,давайте откинем все вопросы в плане почему реквизит такой,и причем тут магазины.Я же говорю не типовая конфа.У меня задача как запросом решить данную проблему.
Вот пример
Период-Регистратор-Номенклатура-Склад-ТипЦен-Цена
В регистре лежал записи
01.01.2012 - КорректировкаЗаписейРегистров - Ананас - Склад1 - ЦенаУПоставщика2 - 36р
02.01.2012 - ПоступлениеТоваровИУслуг - Ананас - Склад1 - ЦенаУПоставщика - 44р
03.01.2012 - ПоступлениеТоваровИУслуг - Ананас - Склад1 - ЦенаУПоставщика - 55р
Скажем делаем срез последний на 04.01.2012.
Поулчаем вот:
Дата-Товар-Склад-Цена
04.01.2012 -Ананас-Склад1-36р
04.01.2012 -Ананас-Склад1-55р
Нам нужна только Запись 2,где цена 55р.Но он нам ещё и выводит запись 1,сделаную коректировкой,вобщем срез последних в разрезе типов цен. А нужно просто срез последних,самую последнию взять.
Вот пример
Период-Регистратор-Номенклатура-Склад-ТипЦен-Цена
В регистре лежал записи
01.01.2012 - КорректировкаЗаписейРегистров - Ананас - Склад1 - ЦенаУПоставщика2 - 36р
02.01.2012 - ПоступлениеТоваровИУслуг - Ананас - Склад1 - ЦенаУПоставщика - 44р
03.01.2012 - ПоступлениеТоваровИУслуг - Ананас - Склад1 - ЦенаУПоставщика - 55р
Скажем делаем срез последний на 04.01.2012.
Поулчаем вот:
Дата-Товар-Склад-Цена
04.01.2012 -Ананас-Склад1-36р
04.01.2012 -Ананас-Склад1-55р
Нам нужна только Запись 2,где цена 55р.Но он нам ещё и выводит запись 1,сделаную коректировкой,вобщем срез последних в разрезе типов цен. А нужно просто срез последних,самую последнию взять.
Читают тему
(гостей: 1)