|
УТ 11 Вид цены - Произвольный запрос к данным ИБ | ☑ | ||
---|---|---|---|---|
0
fantomrik
25.01.16
✎
20:24
|
Камрады, привет!
Кто плотно сидел с настройками видов цен, помогите пожалуйста настроить вид цены (пусть будет "Розница" называться). Он должен рассчитываться как ПлановаяСебестоимость * КоэффНаценки, где плановая себестоимость это цена поступления*5%, а КоэффНаценки это дополнительный реквизит справочника Номенклатура с типом число 10,2. Есть еще доп условие, если текущая цена Розница < предыдущей (закупка стала дешевле), оставляем прошлую цену Розница. Но это совсем хардкор, первую бы часть задачи решить. В теории наверно это часть должна решаться при расчете ПлановаяСебестоимость. Саму ПлановуюСебестоимость считаю как отдельный вид цены - наценка на цену поступления. |
|||
1
fantomrik
25.01.16
✎
20:46
|
Cyberhawk долго тему смотрит, наверное поможет :)
|
|||
2
Cyberhawk
25.01.16
✎
21:13
|
Опиши конкретно, в чем сложность.
Один вид цены ты уже настроил, насколько Я понял. |
|||
3
fantomrik
25.01.16
✎
22:28
|
(2) Не понимаю как запрос так написать - как в задаче моей. Первый вид цен просто наценка на цену закупки, это понятно.
|
|||
4
fantomrik
25.01.16
✎
22:47
|
Вобщем пока скривил душой, исказил задачу...
Сделал "Розничную" так - взял схему МаксимальныеЦеныПоставщика, немного изменил ее - добавив свой коэффициент наценки из ДопРеквизита номенклатуры. Так работает все, позже - будет время, буду разбираться доскональнее. |
|||
5
100kg
26.01.16
✎
09:25
|
(4) Поделись схемой с общественностью
|
|||
6
fantomrik
27.01.16
✎
15:19
|
(5) Типовая схема, в последней таблицы соединил с ТЧ Доп.реквизиты номенклатуры. В параметрах добавилось -СвойствоКоэффициентНаценки выражение: ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоНаименованию("Коэффициент наценки")
ВЫБРАТЬ РАЗЛИЧНЫЕ Сегменты.Номенклатура, Сегменты.Характеристика, ИСТИНА КАК ИспользуетсяОтборПоСегментуНоменклатуры ПОМЕСТИТЬ ОтборПоСегментуНоменклатуры ИЗ РегистрСведений.НоменклатураСегмента КАК Сегменты {ГДЕ Сегменты.Сегмент.* КАК СегментНоменклатуры, Сегменты.Номенклатура.* КАК Номенклатура, Сегменты.Характеристика.* КАК Характеристика} ИНДЕКСИРОВАТЬ ПО Сегменты.Номенклатура, Сегменты.Характеристика, ИспользуетсяОтборПоСегментуНоменклатуры ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ПоступлениеТоваровУслугТовары.Номенклатура КАК Номенклатура, ПоступлениеТоваровУслугТовары.Характеристика КАК Характеристика, МАКСИМУМ(ПоступлениеТоваровУслугТовары.Ссылка.Дата) КАК МаксимальнаяДата ПОМЕСТИТЬ ВременнаяТаблица_1 ИЗ Документ.ПоступлениеТоваровУслуг.Товары КАК ПоступлениеТоваровУслугТовары ГДЕ ПоступлениеТоваровУслугТовары.Ссылка.Дата <= КОНЕЦПЕРИОДА(&ДатаДокумента, ДЕНЬ) И ПоступлениеТоваровУслугТовары.Ссылка.Проведен И НЕ &ЭтоВводНаОсновании {ГДЕ ПоступлениеТоваровУслугТовары.Номенклатура КАК Номенклатура, ПоступлениеТоваровУслугТовары.Характеристика КАК Характеристика} СГРУППИРОВАТЬ ПО ПоступлениеТоваровУслугТовары.Характеристика, ПоступлениеТоваровУслугТовары.Номенклатура ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ПоступлениеТоваровУслугТовары.Номенклатура КАК Номенклатура, ПоступлениеТоваровУслугТовары.Характеристика КАК Характеристика, МАКСИМУМ(ПоступлениеТоваровУслугТовары.Ссылка) КАК ДокументПоступления ПОМЕСТИТЬ ВременнаяТаблица_2 ИЗ Документ.ПоступлениеТоваровУслуг.Товары КАК ПоступлениеТоваровУслугТовары ВНУТРЕННЕЕ СОЕДИНЕНИЕ ВременнаяТаблица_1 КАК Таблица ПО ПоступлениеТоваровУслугТовары.Номенклатура = Таблица.Номенклатура И ПоступлениеТоваровУслугТовары.Характеристика = Таблица.Характеристика И ПоступлениеТоваровУслугТовары.Ссылка.Дата = Таблица.МаксимальнаяДата ГДЕ НЕ &ЭтоВводНаОсновании И ПоступлениеТоваровУслугТовары.Ссылка.Проведен СГРУППИРОВАТЬ ПО ПоступлениеТоваровУслугТовары.Характеристика, ПоступлениеТоваровУслугТовары.Номенклатура ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ТоварыДокумента.Номенклатура КАК Номенклатура, ТоварыДокумента.Характеристика КАК Характеристика, ТоварыДокумента.Упаковка КАК Упаковка, ТоварыДокумента.КоличествоУпаковок КАК КоличествоУпаковок, ЕСТЬNULL(ТоварыДокумента.Упаковка.Коэффициент, 1) КАК Коэффициент, ВЫРАЗИТЬ(ВЫБОР КОГДА ВидыЦен.ЦенаВключаетНДС И ТоварыДокумента.Ссылка.ЦенаВключаетНДС ИЛИ НЕ ВидыЦен.ЦенаВключаетНДС И НЕ ТоварыДокумента.Ссылка.ЦенаВключаетНДС ТОГДА ТоварыДокумента.Цена КОГДА ВидыЦен.ЦенаВключаетНДС И НЕ ТоварыДокумента.Ссылка.ЦенаВключаетНДС ТОГДА (ТоварыДокумента.Сумма + ТоварыДокумента.СуммаНДС) / ТоварыДокумента.КоличествоУпаковок КОГДА НЕ ВидыЦен.ЦенаВключаетНДС И ТоварыДокумента.Ссылка.ЦенаВключаетНДС ТОГДА (ТоварыДокумента.Сумма - ТоварыДокумента.СуммаНДС) / ТоварыДокумента.КоличествоУпаковок КОНЕЦ КАК ЧИСЛО(15, 2)) КАК Цена, ТоварыДокумента.Ссылка.Валюта КАК Валюта ПОМЕСТИТЬ ТаблицаЦены ИЗ Документ.ПоступлениеТоваровУслуг.Товары КАК ТоварыДокумента ВНУТРЕННЕЕ СОЕДИНЕНИЕ ВременнаяТаблица_2 КАК Таблица ПО ТоварыДокумента.Номенклатура = Таблица.Номенклатура И ТоварыДокумента.Характеристика = Таблица.Характеристика И ТоварыДокумента.Ссылка = Таблица.ДокументПоступления ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ВидыЦен КАК ВидыЦен ПО (ВидыЦен.Ссылка = &ВидЦены) ГДЕ НЕ &ЭтоВводНаОсновании И ТоварыДокумента.КоличествоУпаковок <> 0 И ТоварыДокумента.Ссылка.Проведен {ГДЕ ((ТоварыДокумента.Номенклатура, ТоварыДокумента.Характеристика) В (ВЫБРАТЬ ОтборПоСегментуНоменклатуры.Номенклатура, ОтборПоСегментуНоменклатуры.Характеристика ИЗ ОтборПоСегментуНоменклатуры ГДЕ ОтборПоСегментуНоменклатуры.ИспользуетсяОтборПоСегментуНоменклатуры = &ИспользуетсяОтборПоСегментуНоменклатуры)) КАК Поле2} ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ ТоварыДокументаВводНаОсновании.Номенклатура, ТоварыДокументаВводНаОсновании.Характеристика, ТоварыДокументаВводНаОсновании.Упаковка, ТоварыДокументаВводНаОсновании.КоличествоУпаковок, ЕСТЬNULL(ТоварыДокументаВводНаОсновании.Упаковка.Коэффициент, 1), ВЫРАЗИТЬ(ВЫБОР КОГДА ВидыЦен.ЦенаВключаетНДС И ТоварыДокументаВводНаОсновании.Ссылка.ЦенаВключаетНДС ИЛИ НЕ ВидыЦен.ЦенаВключаетНДС И НЕ ТоварыДокументаВводНаОсновании.Ссылка.ЦенаВключаетНДС ТОГДА ТоварыДокументаВводНаОсновании.Цена КОГДА ВидыЦен.ЦенаВключаетНДС И НЕ ТоварыДокументаВводНаОсновании.Ссылка.ЦенаВключаетНДС ТОГДА (ТоварыДокументаВводНаОсновании.Сумма + ТоварыДокументаВводНаОсновании.СуммаНДС) / ТоварыДокументаВводНаОсновании.КоличествоУпаковок КОГДА НЕ ВидыЦен.ЦенаВключаетНДС И ТоварыДокументаВводНаОсновании.Ссылка.ЦенаВключаетНДС ТОГДА (ТоварыДокументаВводНаОсновании.Сумма - ТоварыДокументаВводНаОсновании.СуммаНДС) / ТоварыДокументаВводНаОсновании.КоличествоУпаковок КОНЕЦ КАК ЧИСЛО(15, 2)), ТоварыДокументаВводНаОсновании.Ссылка.Валюта ИЗ Документ.ПоступлениеТоваровУслуг.Товары КАК ТоварыДокументаВводНаОсновании ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ВидыЦен КАК ВидыЦен ПО (ВидыЦен.Ссылка = &ВидЦены) ГДЕ ТоварыДокументаВводНаОсновании.Ссылка = &Основание И ТоварыДокументаВводНаОсновании.КоличествоУпаковок <> 0 И ТоварыДокументаВводНаОсновании.Ссылка.Проведен И &ЭтоВводНаОсновании {ГДЕ ((ТоварыДокументаВводНаОсновании.Номенклатура, ТоварыДокументаВводНаОсновании.Характеристика) В (ВЫБРАТЬ ОтборПоСегментуНоменклатуры.Номенклатура, ОтборПоСегментуНоменклатуры.Характеристика ИЗ ОтборПоСегментуНоменклатуры ГДЕ ОтборПоСегментуНоменклатуры.ИспользуетсяОтборПоСегментуНоменклатуры = &ИспользуетсяОтборПоСегментуНоменклатуры)) КАК Поле2} ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ ТоварыДокументаВводНаОсновании.Номенклатура, ТоварыДокументаВводНаОсновании.Характеристика, ТоварыДокументаВводНаОсновании.Упаковка, ТоварыДокументаВводНаОсновании.КоличествоУпаковок, ЕСТЬNULL(ТоварыДокументаВводНаОсновании.Упаковка.Коэффициент, 1), ВЫРАЗИТЬ(ВЫБОР КОГДА ВидыЦен.ЦенаВключаетНДС И ТоварыДокументаВводНаОсновании.Ссылка.ЦенаВключаетНДС ИЛИ НЕ ВидыЦен.ЦенаВключаетНДС И НЕ ТоварыДокументаВводНаОсновании.Ссылка.ЦенаВключаетНДС ТОГДА ТоварыДокументаВводНаОсновании.Цена КОГДА ВидыЦен.ЦенаВключаетНДС И НЕ ТоварыДокументаВводНаОсновании.Ссылка.ЦенаВключаетНДС ТОГДА (ТоварыДокументаВводНаОсновании.Сумма + ТоварыДокументаВводНаОсновании.СуммаНДС) / ТоварыДокументаВводНаОсновании.КоличествоУпаковок КОГДА НЕ ВидыЦен.ЦенаВключаетНДС И ТоварыДокументаВводНаОсновании.Ссылка.ЦенаВключаетНДС ТОГДА (ТоварыДокументаВводНаОсновании.Сумма - ТоварыДокументаВводНаОсновании.СуммаНДС) / ТоварыДокументаВводНаОсновании.КоличествоУпаковок КОНЕЦ КАК ЧИСЛО(15, 2)), ТоварыДокументаВводНаОсновании.Ссылка.Валюта ИЗ Документ.ЗаказПоставщику.Товары КАК ТоварыДокументаВводНаОсновании ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ВидыЦен КАК ВидыЦен ПО (ВидыЦен.Ссылка = &ВидЦены) ГДЕ ТоварыДокументаВводНаОсновании.Ссылка = &Основание И ТоварыДокументаВводНаОсновании.КоличествоУпаковок <> 0 И ТоварыДокументаВводНаОсновании.Ссылка.Проведен И &ЭтоВводНаОсновании {ГДЕ ((ТоварыДокументаВводНаОсновании.Номенклатура, ТоварыДокументаВводНаОсновании.Характеристика) В (ВЫБРАТЬ ОтборПоСегментуНоменклатуры.Номенклатура, ОтборПоСегментуНоменклатуры.Характеристика ИЗ ОтборПоСегментуНоменклатуры ГДЕ ОтборПоСегментуНоменклатуры.ИспользуетсяОтборПоСегментуНоменклатуры = &ИспользуетсяОтборПоСегментуНоменклатуры)) КАК Поле2} ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ ТоварыДокументаВводНаОсновании.НоменклатураОприходование, ТоварыДокументаВводНаОсновании.ХарактеристикаОприходование, ЗНАЧЕНИЕ(Справочник.УпаковкиНоменклатуры.ПустаяСсылка), ТоварыДокументаВводНаОсновании.Количество, 1, ВЫРАЗИТЬ(ВЫБОР КОГДА ВидыЦен.ЦенаВключаетНДС ТОГДА ТоварыДокументаВводНаОсновании.Цена КОГДА НЕ ВидыЦен.ЦенаВключаетНДС ТОГДА ТоварыДокументаВводНаОсновании.Цена - ТоварыДокументаВводНаОсновании.Цена * ВЫБОР КОГДА ТоварыДокументаВводНаОсновании.Номенклатура.СтавкаНДС = ЗНАЧЕНИЕ(Перечисление.СтавкиНДС.НДС18) ТОГДА 0.18 КОГДА ТоварыДокументаВводНаОсновании.Номенклатура.СтавкаНДС = ЗНАЧЕНИЕ(Перечисление.СтавкиНДС.НДС10) ТОГДА 0.1 КОГДА ТоварыДокументаВводНаОсновании.Номенклатура.СтавкаНДС = ЗНАЧЕНИЕ(Перечисление.СтавкиНДС.НДС0) ТОГДА 0 КОГДА ТоварыДокументаВводНаОсновании.Номенклатура.СтавкаНДС = ЗНАЧЕНИЕ(Перечисление.СтавкиНДС.БезНДС) ТОГДА 0 КОГДА ТоварыДокументаВводНаОсновании.Номенклатура.СтавкаНДС = ЗНАЧЕНИЕ(Перечисление.СтавкиНДС.НДС18_118) ТОГДА 0.18 КОГДА ТоварыДокументаВводНаОсновании.Номенклатура.СтавкаНДС = ЗНАЧЕНИЕ(Перечисление.СтавкиНДС.НДС10_110) ТОГДА 0.1 ИНАЧЕ 0 КОНЕЦ КОНЕЦ КАК ЧИСЛО(15, 2)), Константы.ВалютаУправленческогоУчета ИЗ Документ.ПорчаТоваров.Товары КАК ТоварыДокументаВводНаОсновании ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ВидыЦен КАК ВидыЦен ПО (ВидыЦен.Ссылка = &ВидЦены) ЛЕВОЕ СОЕДИНЕНИЕ Константы КАК Константы ПО (ИСТИНА) ГДЕ ТоварыДокументаВводНаОсновании.Ссылка = &Основание И ТоварыДокументаВводНаОсновании.Количество <> 0 И ТоварыДокументаВводНаОсновании.Ссылка.Проведен И &ЭтоВводНаОсновании {ГДЕ ((ТоварыДокументаВводНаОсновании.НоменклатураОприходование, ТоварыДокументаВводНаОсновании.ХарактеристикаОприходование) В (ВЫБРАТЬ ОтборПоСегментуНоменклатуры.Номенклатура, ОтборПоСегментуНоменклатуры.Характеристика ИЗ ОтборПоСегментуНоменклатуры ГДЕ ОтборПоСегментуНоменклатуры.ИспользуетсяОтборПоСегментуНоменклатуры = &ИспользуетсяОтборПоСегментуНоменклатуры)) КАК Поле2} ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ ТоварыДокументаВводНаОсновании.Номенклатура, ТоварыДокументаВводНаОсновании.Характеристика, ТоварыДокументаВводНаОсновании.Упаковка, ТоварыДокументаВводНаОсновании.КоличествоУпаковок, ЕСТЬNULL(ТоварыДокументаВводНаОсновании.Упаковка.Коэффициент, 1), ВЫРАЗИТЬ(ВЫБОР КОГДА ВидыЦен.ЦенаВключаетНДС ТОГДА ТоварыДокументаВводНаОсновании.Цена КОГДА НЕ ВидыЦен.ЦенаВключаетНДС ТОГДА ТоварыДокументаВводНаОсновании.Цена - ТоварыДокументаВводНаОсновании.Цена * ВЫБОР КОГДА ТоварыДокументаВводНаОсновании.Номенклатура.СтавкаНДС = ЗНАЧЕНИЕ(Перечисление.СтавкиНДС.НДС18) ТОГДА 0.18 КОГДА ТоварыДокументаВводНаОсновании.Номенклатура.СтавкаНДС = ЗНАЧЕНИЕ(Перечисление.СтавкиНДС.НДС10) ТОГДА 0.1 КОГДА ТоварыДокументаВводНаОсновании.Номенклатура.СтавкаНДС = ЗНАЧЕНИЕ(Перечисление.СтавкиНДС.НДС0) ТОГДА 0 КОГДА ТоварыДокументаВводНаОсновании.Номенклатура.СтавкаНДС = ЗНАЧЕНИЕ(Перечисление.СтавкиНДС.БезНДС) ТОГДА 0 КОГДА ТоварыДокументаВводНаОсновании.Номенклатура.СтавкаНДС = ЗНАЧЕНИЕ(Перечисление.СтавкиНДС.НДС18_118) ТОГДА 0.18 КОГДА ТоварыДокументаВводНаОсновании.Номенклатура.СтавкаНДС = ЗНАЧЕНИЕ(Перечисление.СтавкиНДС.НДС10_110) ТОГДА 0.1 ИНАЧЕ 0 КОНЕЦ КОНЕЦ КАК ЧИСЛО(15, 2)), Константы.ВалютаУправленческогоУчета ИЗ Документ.ПрочееОприходованиеТоваров.Товары КАК ТоварыДокументаВводНаОсновании ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ВидыЦен КАК ВидыЦен ПО (ВидыЦен.Ссылка = &ВидЦены) ЛЕВОЕ СОЕДИНЕНИЕ Константы КАК Константы ПО (ИСТИНА) ГДЕ ТоварыДокументаВводНаОсновании.Ссылка = &Основание И ТоварыДокументаВводНаОсновании.КоличествоУпаковок <> 0 И ТоварыДокументаВводНаОсновании.Ссылка.Проведен И &ЭтоВводНаОсновании {ГДЕ ((ТоварыДокументаВводНаОсновании.Номенклатура, ТоварыДокументаВводНаОсновании.Характеристика) В (ВЫБРАТЬ ОтборПоСегментуНоменклатуры.Номенклатура, ОтборПоСегментуНоменклатуры.Характеристика ИЗ ОтборПоСегментуНоменклатуры ГДЕ ОтборПоСегментуНоменклатуры.ИспользуетсяОтборПоСегментуНоменклатуры = &ИспользуетсяОтборПоСегментуНоменклатуры)) КАК Поле2} ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ РАЗЛИЧНЫЕ ТаблицаЦены.Номенклатура КАК Номенклатура, ТаблицаЦены.Характеристика КАК Характеристика, ТаблицаЦены.Упаковка КАК Упаковка, ТаблицаЦены.Коэффициент КАК Коэффициент, ВЫБОР КОГДА &ВыборЦены = 1 ТОГДА (ВЫРАЗИТЬ(Цены.МаксимальнаяЦенаЗаЕдиницу * ТаблицаЦены.Коэффициент КАК ЧИСЛО(15, 2))) * (ВЫРАЗИТЬ(НоменклатураДополнительныеРеквизиты.Значение КАК ЧИСЛО(15, 2))) КОГДА &ВыборЦены = 2 ТОГДА (ВЫРАЗИТЬ(Цены.МинимальнаяЦенаЗаЕдиницу * ТаблицаЦены.Коэффициент КАК ЧИСЛО(15, 2))) * (ВЫРАЗИТЬ(НоменклатураДополнительныеРеквизиты.Значение КАК ЧИСЛО(15, 2))) КОГДА &ВыборЦены = 3 ТОГДА (ВЫРАЗИТЬ(Цены.СредняяЦенаЗаЕдиницу * ТаблицаЦены.Коэффициент КАК ЧИСЛО(15, 2))) * (ВЫРАЗИТЬ(НоменклатураДополнительныеРеквизиты.Значение КАК ЧИСЛО(15, 2))) ИНАЧЕ 0 КОНЕЦ КАК Цена, ТаблицаЦены.Валюта КАК Валюта ИЗ ТаблицаЦены КАК ТаблицаЦены ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ ТаблицаЦены.Номенклатура КАК Номенклатура, ТаблицаЦены.Характеристика КАК Характеристика, МАКСИМУМ(ВЫРАЗИТЬ(ТаблицаЦены.Цена / ТаблицаЦены.Коэффициент КАК ЧИСЛО(15, 2))) КАК МаксимальнаяЦенаЗаЕдиницу, МИНИМУМ(ВЫРАЗИТЬ(ТаблицаЦены.Цена / ТаблицаЦены.Коэффициент КАК ЧИСЛО(15, 2))) КАК МинимальнаяЦенаЗаЕдиницу, СУММА(ТаблицаЦены.Цена * ТаблицаЦены.КоличествоУпаковок) / СУММА(ТаблицаЦены.КоличествоУпаковок * ТаблицаЦены.Коэффициент) КАК СредняяЦенаЗаЕдиницу, ТаблицаЦены.Валюта КАК Валюта ИЗ ТаблицаЦены КАК ТаблицаЦены СГРУППИРОВАТЬ ПО ТаблицаЦены.Номенклатура, ТаблицаЦены.Характеристика, ТаблицаЦены.Валюта) КАК Цены ПО (Цены.Номенклатура = ТаблицаЦены.Номенклатура) И (Цены.Характеристика = ТаблицаЦены.Характеристика) И (Цены.Валюта = ТаблицаЦены.Валюта) ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ ТаблицаЦены.Номенклатура КАК Номенклатура, ТаблицаЦены.Характеристика КАК Характеристика, МАКСИМУМ(ТаблицаЦены.Коэффициент) КАК МаксимальныйКоэффициент, МИНИМУМ(ТаблицаЦены.Коэффициент) КАК МинимальныйКоэффициент ИЗ ТаблицаЦены КАК ТаблицаЦены СГРУППИРОВАТЬ ПО ТаблицаЦены.Номенклатура, ТаблицаЦены.Характеристика) КАК Коэффициенты ПО (Коэффициенты.Номенклатура = ТаблицаЦены.Номенклатура) И (Коэффициенты.Характеристика = ТаблицаЦены.Характеристика) ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Номенклатура.ДополнительныеРеквизиты КАК НоменклатураДополнительныеРеквизиты ПО ТаблицаЦены.Номенклатура = НоменклатураДополнительныеРеквизиты.Ссылка ГДЕ ВЫБОР КОГДА &ВыборУпаковки = 1 ТОГДА ТаблицаЦены.Коэффициент = Коэффициенты.МаксимальныйКоэффициент КОГДА &ВыборУпаковки = 2 ТОГДА ТаблицаЦены.Коэффициент = Коэффициенты.МинимальныйКоэффициент ИНАЧЕ ЛОЖЬ КОНЕЦ И НоменклатураДополнительныеРеквизиты.Свойство = &СвойствоКоэффициентНаценки |
|||
7
fantomrik
27.01.16
✎
15:25
|
К этой схеме нужно добавить следующую логику - брать срез последних по ценам номенклатуры (видцен = Закупка) и брать большую цену между последним поступлением и ценой из регистра. Вот это реализовать пока не получилось.
У нас может быть что поступлений нет, а цена закупки была установлена программно (номенклатура, которую мы под заказ продаем). К схеме выше, в последнем запросе связал левым соединением ТаблицуЦен и ЦеныНоменклатурыСрезПоследних(, ВидЦен = &Закупка), но не канает. в ТаблицеЦен нет товаров которые нам не поступали. Попробовал последний запрос поместить в ВТ, сделать след запрос в котором основная таблица и с ней левым соединением связываю ВТ и СрезПоследних, но тоже не отрабатывает. Подскажите, как решить задачку? Спасибо! |
|||
8
fantomrik
27.01.16
✎
15:28
|
Кстати народ - в ручную как на этом форуме код в спойлер записхивать? Автоматом криво как то пихает)
|
|||
9
fantomrik
27.01.16
✎
16:08
|
Мастера запросов в СКД, помогите пожалуйста! Вроде не очень сложная задача, для тех кто занимался этим.
|
|||
10
fantomrik
27.01.16
✎
16:52
|
(7) Параметры в СКД у меня описаны в выражении (вид цены - Справочники.ВидыЦен.НАйтиПоНаименованию("Закупка")), с ошибкой описал.
А так берем типовую схему, связаываем левым соединением ТаблицуЦен и ЦеныНоменклатурыСрезПоследних(, ВидЦен = &Закупка), и цену берем максим . Задача решена. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |