|
Как сделать отбор в СКД по не по конечному результату ресурсов? | ☑ | ||
---|---|---|---|---|
0
Elf56
24.06.14
✎
10:44
|
Всем доброго времени суток.
Имеется 1с 8.3 УТ 11 есть вот такой запрос ВЫБРАТЬ ЗаказКлиентаТовары.Ссылка.Партнер, ЗаказКлиентаТовары.Ссылка КАК Ссылка, ЗаказКлиентаТовары.Номенклатура, ЗаказКлиентаТовары.осиРМ, СУММА(ЗаказКлиентаТовары.СуммаСНДС) КАК СуммаСНДС, СУММА(ЗаказКлиентаТовары.СуммаРучнойСкидки) КАК СуммаРучнойСкидки, СУММА(ЗаказКлиентаТовары.СуммаАвтоматическойСкидки) КАК СуммаАвтоматическойСкидки, ЗаказКлиентаТовары.ПроцентАвтоматическойСкидки, ЗаказКлиентаТовары.ПроцентРучнойСкидки, ЗаказКлиентаТовары.Ссылка.СуммаДокумента КАК СкидкаДокумента, ВЫБОР КОГДА ЗаказКлиентаТовары.СуммаРучнойСкидки <> 0 ТОГДА СУММА(ЗаказКлиентаТовары.СуммаРучнойСкидки) ИНАЧЕ СУММА(ЗаказКлиентаТовары.СуммаРучнойСкидки) КОНЕЦ КАК СуммаСкидки ПОМЕСТИТЬ Товары ИЗ Документ.ЗаказКлиента.Товары КАК ЗаказКлиентаТовары ГДЕ ЗаказКлиентаТовары.Ссылка.Проведен СГРУППИРОВАТЬ ПО ЗаказКлиентаТовары.Ссылка, ЗаказКлиентаТовары.Номенклатура, ЗаказКлиентаТовары.осиРМ, ЗаказКлиентаТовары.Ссылка.Партнер, ЗаказКлиентаТовары.ПроцентАвтоматическойСкидки, ЗаказКлиентаТовары.ПроцентРучнойСкидки, ЗаказКлиентаТовары.Ссылка.СуммаДокумента, ЗаказКлиентаТовары.СуммаРучнойСкидки ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ осиОплатаВыручкаОбороты.Партнер КАК Партнер, осиОплатаВыручкаОбороты.Заказ КАК Заказ, ВЫБОР КОГДА Товары.СуммаСНДС <> 0 ТОГДА (Товары.СуммаСНДС + Товары.СуммаРучнойСкидки + Товары.СуммаАвтоматическойСкидки) * осиОплатаВыручкаОбороты.СуммаОплатыОборот / Товары.СуммаСНДС ИНАЧЕ 0 КОНЕЦ КАК ПрайсЦена, ВЫБОР КОГДА Товары.СуммаСНДС <> 0 ТОГДА осиОплатаВыручкаОбороты.СуммаОплатыОборот / Товары.СуммаСНДС * (Товары.СуммаРучнойСкидки + Товары.СуммаАвтоматическойСкидки) ИНАЧЕ 0 КОНЕЦ КАК Скидка, осиОплатаВыручкаОбороты.СуммаОплатыОборот КАК СуммаСоСкидкой, осиОплатаВыручкаОбороты.Номенклатура, осиОплатаВыручкаОбороты.Заказ.осиНаправлениеДеятельности, осиОплатаВыручкаОбороты.РекламноеМесто, ВЫБОР КОГДА Товары.ПроцентРучнойСкидки <> 0 ТОГДА Товары.ПроцентРучнойСкидки КОНЕЦ КАК ПроцентРучнойСкидки, Товары.ПроцентАвтоматическойСкидки, НАЧАЛОПЕРИОДА(осиОплатаВыручкаОбороты.ПериодМесяц, МЕСЯЦ) КАК ПериодМесяц, ВЫБОР КОГДА Товары.Ссылка.СуммаДокумента > 0 И Товары.СуммаСНДС <> 0 ТОГДА осиОплатаВыручкаОбороты.СуммаОплатыОборот / Товары.СуммаСНДС * (Товары.СуммаРучнойСкидки + Товары.СуммаАвтоматическойСкидки) * 100 / (Товары.Ссылка.СуммаДокумента + осиОплатаВыручкаОбороты.СуммаОплатыОборот / Товары.СуммаСНДС * (Товары.СуммаРучнойСкидки + Товары.СуммаАвтоматическойСкидки)) ИНАЧЕ 0 КОНЕЦ КАК СуммаСкидкиДокумента, Товары.СуммаРучнойСкидки, Товары.Ссылка.СуммаДокумента КАК СкидкаДокумента, ВЫБОР КОГДА Товары.Ссылка.СуммаДокумента > 0 ТОГДА СУММА(Товары.СуммаСкидки) * 100 / (Товары.Ссылка.СуммаДокумента + СУММА(Товары.СуммаСкидки)) ИНАЧЕ 0 КОНЕЦ КАК СкидкаДок, Товары.СуммаСкидки ИЗ РегистрНакопления.осиОплатаВыручка.Обороты(, , Авто, Заказ.осиВидСчета <> ЗНАЧЕНИЕ(Перечисление.осиВидыСчетов.ДокументальныйСчет) {(Партнер = &Партнер), (Заказ.осиНаправлениеДеятельности = &НаправлениеДеятельности)}) КАК осиОплатаВыручкаОбороты ЛЕВОЕ СОЕДИНЕНИЕ Товары КАК Товары ПО осиОплатаВыручкаОбороты.Заказ = Товары.Ссылка И осиОплатаВыручкаОбороты.Номенклатура = Товары.Номенклатура И осиОплатаВыручкаОбороты.РекламноеМесто = Товары.осиРМ ГДЕ ВЫБОР КОГДА &ВключатьРК ТОГДА &ВключатьРК ИНАЧЕ осиОплатаВыручкаОбороты.Заказ.Партнер = &РКЛГ И осиОплатаВыручкаОбороты.Заказ.Организация <> &ЛГОфис ИЛИ осиОплатаВыручкаОбороты.Заказ.Партнер <> &РКЛГ КОНЕЦ СГРУППИРОВАТЬ ПО осиОплатаВыручкаОбороты.Партнер, осиОплатаВыручкаОбороты.Заказ, осиОплатаВыручкаОбороты.СуммаОплатыОборот, осиОплатаВыручкаОбороты.Номенклатура, осиОплатаВыручкаОбороты.Заказ.осиНаправлениеДеятельности, осиОплатаВыручкаОбороты.РекламноеМесто, Товары.ПроцентАвтоматическойСкидки, НАЧАЛОПЕРИОДА(осиОплатаВыручкаОбороты.ПериодМесяц, МЕСЯЦ), Товары.СуммаРучнойСкидки, Товары.Ссылка.СуммаДокумента, Товары.СуммаСкидки, ВЫБОР КОГДА Товары.СуммаСНДС <> 0 ТОГДА (Товары.СуммаСНДС + Товары.СуммаРучнойСкидки + Товары.СуммаАвтоматическойСкидки) * осиОплатаВыручкаОбороты.СуммаОплатыОборот / Товары.СуммаСНДС ИНАЧЕ 0 КОНЕЦ, ВЫБОР КОГДА Товары.СуммаСНДС <> 0 ТОГДА осиОплатаВыручкаОбороты.СуммаОплатыОборот / Товары.СуммаСНДС * (Товары.СуммаРучнойСкидки + Товары.СуммаАвтоматическойСкидки) ИНАЧЕ 0 КОНЕЦ, ВЫБОР КОГДА Товары.ПроцентРучнойСкидки <> 0 ТОГДА Товары.ПроцентРучнойСкидки КОНЕЦ, ВЫБОР КОГДА Товары.Ссылка.СуммаДокумента > 0 И Товары.СуммаСНДС <> 0 ТОГДА осиОплатаВыручкаОбороты.СуммаОплатыОборот / Товары.СуммаСНДС * (Товары.СуммаРучнойСкидки + Товары.СуммаАвтоматическойСкидки) * 100 / (Товары.Ссылка.СуммаДокумента + осиОплатаВыручкаОбороты.СуммаОплатыОборот / Товары.СуммаСНДС * (Товары.СуммаРучнойСкидки + Товары.СуммаАвтоматическойСкидки)) ИНАЧЕ 0 КОНЕЦ Поле "Скидка документа" В конструкторе запроса определяется как поле "Товары.Ссылка.СуммаДокумента" в самой СКД в ресурсах вычисляется вот такое вырожение ОКР(Сумма(СуммаРучнойСкидки) * 100 / (СкидкаДокумента + Сумма(СуммаРучнойСкидки))) т.е. уже на выходе в отчет по первой группировке которым является сам документ выходит результат вычисления, но в строках документа в отчете выводится как "Товары.Ссылка.СуммаДокумента" т.е. другой результат. В ресурсах расчитывается все правильно, но вот в чем проблема мне нужно сделать отбор именно по результату вычисления ресурса который в первой группировке, а у меня отбор осуществляется по строке документа т.е. по полю "Товары.Ссылка.СуммаДокумента" там совершенно другое значение. Так как мне сделать отбор по ресурсам СКД? Если вычислять это выражение в запросе то оно не правильное получается нужно именно в ресурсах. Всем заранее спасибо за ответ. |
|||
1
Elf56
24.06.14
✎
10:56
|
Не у что не кто не знает как этот отбор сделать?
|
|||
2
Elf56
24.06.14
✎
12:02
|
поднял
|
|||
3
Elf56
24.06.14
✎
12:17
|
Вот я туплю всего то надо было по той групперовки сделать отбор по какой надо тема закрыта )
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |