Как СКД работает с виртуальными таблицами #521081


#0 by ромарио
Очень интересует вопрос как СКД (да и построитель отчета тоже) обрабатывает ситуацию, когда несколько виртуальных таблиц соединяются со справочником через левое соединение, и в настройках задан какой-либо отбор по справочнику. Будут ли условия этого отбора попадать в параметры виртульных таблиц. Например: ВЫБРАТЬ    СпрНоменклатура.Ссылка КАК Номенклатура,    ТоварыНаСкладахОстатки.КоличествоОстаток КАК Остаток Затем, если в СКД указать что Номенклатура нужна из такой-то группы, попадет ли это условие в параметры виртуальных таблиц.
#1 by IronDemon
Так - да
#2 by Vovan1975
хз, ведь отборы с СКД можно на разных уровнях устанавливать, врядли они все в запрос попадут...
#3 by el-gamberro
откуда знаешь?
#4 by IronDemon
Можно проверить
#5 by ромарио
спасибо за ссылку. Получилось так: Отчет                                                             Параметры данных:                                                             Отбор:    Остаток Равно "0" И Номенклатура В группе "Кроссовки"                                                         ВЫБРАТЬ    СпрНоменклатура.Ссылка КАК Номенклатура,    И СпрНоменклатура.Ссылка В ИЕРАРХИИ (&П2) Я понял, что в регистры накопления подставляет, а в регистры сведений нет.
#6 by IronDemon
Если Измерения то подставляет, если Ресурсы то нужно указать самому в условия компоновки
#7 by ромарио
А почему не подставил "Номенклатура В ИЕРАРХИИ(&П2)" в СебестоимостьНоменклатурыСрезПоследних? в нем Номенклатура это Измерение.
#8 by Wingless
имхо и не должно подставлять, запрос к СрезПоследних с указанием отбора в параметрах и запрос с отбором в ГДЕ могут возвращать разные результаты.
#9 by Wingless
т.е.
#10 by IronDemon
Ну, СКД не безгрешна. Если указать параметр ВТ то подставляет. ВЫБРАТЬ    СпрНоменклатура.Ссылка КАК Номенклатура,    ТоварыНаСкладахОстатки.КоличествоОстаток,    СписанныеТоварыСрезПоследних.СтоимостьПоступление
#11 by ромарио
Спасибо, про это и хотел узнать.
#12 by azernot
А как наоборот, указать ему что не подставлял? Т.е. мне как раз на уровне вирутальной таблицы не нужно чтобы отбор по измерению работал, а вот парой уревней выше я явно указываю в настройках что нужен отбор по полю. По ряду причин не хотелось бы поле переименовывать...
#13 by IronDemon
ТоварыНаСкладах.Остатки(, {(Номенклатура).* КАК Товар}) КАК
#14 by azernot
Я уже пробовал разименовать отбор в параметрах :). Не сработало. :(
#15 by azernot
Вот кусок запроса, чтобы, так сказать, идея была понятна... ИЗ            КОГДА НастройкиЗаменыАналитики.ПодразделениеЗначение ЕСТЬ NULL        ВЫБОР            КОГДА НастройкиЗаменыАналитики.ПодразделениеЗначение ЕСТЬ NULL        ВЫБОР            КОГДА НастройкиЗаменыАналитики.ОрганизацияЗначение ЕСТЬ NULL        ВЫБОР            КОГДА НастройкиЗаменыАналитики.КонтрагентЗначение ЕСТЬ NULL            ГДЕ                ПродажиСебестоимость.Период МЕЖДУ &НачалоПериода И &КонецПериода                    ТОГДА (НЕ КонтрагентыСвязанныеСОрганизациямиСрезПоследних.Контрагент ЕСТЬ NULL )                ИНАЧЕ КонтрагентыСвязанныеСОрганизациямиСрезПоследних.Контрагент ЕСТЬ NULL
#16 by IronDemon
{ГДЕ    ПродажиОбороты.Номенклатура.*}
#17 by azernot
Т.е. настаиваешь, что должно работать? Хм... может всему виной галка "Автозаполнение" в СКД? Или есть ещё какие подводные камни?
#18 by azernot
Решил проблему переименованием выбираемых полей, а затем присвоением им заголовков с первоначальным написанием... А вот метод из , так и не заработал у меня...
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям