|
Кострукция {ХАРАКТЕРИСТИКИ} и отбор СКД | ☑ | ||
---|---|---|---|---|
0
konst1231
29.12.14
✎
17:33
|
Здравсвуйте,
Есть отчет с 2-мя наборами данных СКД: 1-ый объект, 2-ый запрос. Необходимо сделать возможным отбор в отчете по категориям ном-ры. Добавил во 2-ой набор конструкцию: {ХАРАКТЕРИСТИКИ ТИП(Справочник.Номенклатура) ВИДЫХАРАКТЕРИСТИК (ВЫБРАТЬ КатегорииОбъектов.Ссылка, КатегорииОбъектов.Наименование ИЗ Справочник.КатегорииОбъектов КАК КатегорииОбъектов ГДЕ КатегорииОбъектов.НазначениеКатегории = ЗНАЧЕНИЕ(ПланВидовХарактеристик.НазначенияСвойствКатегорийОбъектов.Справочник_Номенклатура)) ПОЛЕКЛЮЧА Ссылка ПОЛЕИМЕНИ Наименование ЗНАЧЕНИЯХАРАКТЕРИСТИК РегистрСведений.КатегорииОбъектов ПОЛЕОБЪЕКТА Объект ПОЛЕВИДА Категория } Запрос из 2-го набора довольно сложный, со вложенными запросами и временными таблицами, данную конструкцию вставил на самом верхнем уровне. Отбор по категориям не работает: посмотрел запрос, кот. генерирует скд, отбор по категориям вставляется только в подзапрос, где выбирается таблица номенклатуры, а в параметры таблицы остатков, отбор не вставляется, как добиться чтобы отбор по категориям наклыдывался на весь запрос. Вот кусок кода: ВЫБРАТЬ ЕСТЬNULL(ПродажиОбороты.КоличествоОборот, 0) КАК КоличествоПродаж, &КонецПериодаПродаж КАК КонецПериода, ПродажиОбороты.Номенклатура КАК Номенклатура, 0 КАК КоличестовПродажПрошлыйГод, 0 КАК ОстатокПоЗаказу ИЗ РегистрНакопления.Продажи.Обороты( &НачалоПериода, &КонецПериодаПродаж, , Номенклатура.Сезон.ДатаКонца <= &КонецПериода И Номенклатура.Бренд = &П2) КАК ПродажиОбороты ГДЕ ВЫБОР КОГДА ПродажиОбороты.Номенклатура.Наименование ПОДОБНО "UA %" ТОГДА ИСТИНА ИНАЧЕ ЛОЖЬ КОНЕЦ = &П3 ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ 0, &КонецПериодаПродаж, Номенклатура.Ссылка, 0, 0 ИЗ Справочник.Номенклатура КАК Номенклатура ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КатегорииОбъектов КАК КатегорииОбъектов ПО (КатегорииОбъектов.Объект = Номенклатура.Ссылка) И (КатегорииОбъектов.Категория = &П) ГДЕ Номенклатура.Сезон.ДатаКонца <= &КонецПериода И Номенклатура.Бренд = &П2 И ВЫБОР КОГДА Номенклатура.Наименование ПОДОБНО "UA %" ТОГДА ИСТИНА ИНАЧЕ ЛОЖЬ КОНЕЦ = &П3 И ВЫБОР КОГДА КатегорииОбъектов.Объект ЕСТЬ НЕ NULL ТОГДА ИСТИНА ИНАЧЕ ЛОЖЬ КОНЕЦ = &П4 |
|||
1
konst1231
29.12.14
✎
17:37
|
Кусок кода сгенерел СКД, соединение с категориями есть только у таблицы Номенклатура.
|
|||
2
konst1231
29.12.14
✎
17:55
|
Никто не знает?
|
|||
3
mikecool
29.12.14
✎
17:57
|
а в параметры таблицы остатков, отбор не вставляется
в параметрах ВТ также есть закладка СКД, емнип ,там и надо указывать |
|||
4
konst1231
29.12.14
✎
18:05
|
(3) не совсем понял: вы про это: {(Номенклатура).*}
Вот тот кусок запроса из макета: ВЫБРАТЬ ЕСТЬNULL(ПродажиОбороты.КоличествоОборот, 0) КАК КоличествоПродаж, &КонецПериодаПродаж КАК КонецПериода, ПродажиОбороты.Номенклатура КАК Номенклатура, 0 КАК КоличестовПродажПрошлыйГод, 0 КАК ОстатокПоЗаказу ИЗ РегистрНакопления.Продажи.Обороты(&НачалоПериода, &КонецПериодаПродаж, , Номенклатура.Сезон.ДатаКонца <= &КонецПериода {(Номенклатура).*}) КАК ПродажиОбороты {ГДЕ (ВЫБОР КОГДА ПродажиОбороты.Номенклатура.Наименование ПОДОБНО "UA %" ТОГДА ИСТИНА ИНАЧЕ ЛОЖЬ КОНЕЦ) КАК ВключатьТолькоУкраину} ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ 0, &КонецПериодаПродаж, Номенклатура.Ссылка, 0, 0 ИЗ Справочник.Номенклатура КАК Номенклатура ГДЕ Номенклатура.Сезон.ДатаКонца <= &КонецПериода {ГДЕ Номенклатура.Ссылка.* КАК Номенклатура, (ВЫБОР КОГДА Номенклатура.Наименование ПОДОБНО "UA %" ТОГДА ИСТИНА ИНАЧЕ ЛОЖЬ КОНЕЦ) КАК ВключатьТолькоУкраину} |
|||
5
konst1231
29.12.14
✎
18:10
|
(3) Где в параметрах ВТ закладка СКД? Имеется ввиду на закладке компонока данных, кнопка параметры ВТ?
|
|||
6
Reaper_1c
29.12.14
✎
22:26
|
Работа с характеристиками в параметрах виртуальных таблиц не поддерживается
|
|||
7
konst1231
30.12.14
✎
10:52
|
(6) Ок, а какм добиться чтобы было левое соединение категорий с РН, а не только со справочником ном-ры?
В консоли отчетов делал простой запрос, там все соединяет: ВЫБРАТЬ ПродажиОбороты.Номенклатура КАК Номенклатура, ПродажиОбороты.КоличествоОборот КАК КоличествоОборот, ПРЕДСТАВЛЕНИЕССЫЛКИ(ПродажиОбороты.Номенклатура) КАК НоменклатураПредставление ИЗ РегистрНакопления.Продажи.Обороты КАК ПродажиОбороты ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КатегорииОбъектов КАК КатегорииОбъектов ПО (КатегорииОбъектов.Объект = ПродажиОбороты.Номенклатура И КатегорииОбъектов.Категория = &П) ГДЕ ВЫБОР КОГДА КатегорииОбъектов.Объект ЕСТЬ НЕ NULL ТОГДА ИСТИНА ИНАЧЕ ЛОЖЬ КОНЕЦ = &П2 ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ Номенклатура.Ссылка, 0, Номенклатура.Представление ИЗ Справочник.Номенклатура КАК Номенклатура ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КатегорииОбъектов КАК КатегорииОбъектов ПО (КатегорииОбъектов.Объект = Номенклатура.Ссылка И КатегорииОбъектов.Категория = &П) ГДЕ ВЫБОР КОГДА КатегорииОбъектов.Объект ЕСТЬ НЕ NULL ТОГДА ИСТИНА ИНАЧЕ ЛОЖЬ КОНЕЦ = &П2 А с вложенными запросами не хочет, уже на вставлял {характеритиски} на всех уровнях. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |