СКД отборы только на этапе выборки данных #738578


#0 by craxx
Доброго времени суток! Помогите пожалуйста разобраться со следующим моментом. В отчете имеется запрос, состоящий из временных таблиц и собственно выборки данных. Как сделать так, чтобы пользовательскими отборами отбиралось только на этапе выборки данных, а на временные таблицы не влияли никакие отборы?
#1 by ShoGUN
Убрать условия в фигурных скобках в этих запросах.
#2 by craxx
их и так нету
#3 by ShoGUN
А с чего ты взял, что отборы влияют на временные таблицы?
#4 by craxx
а с того что меняются коэффициенты, которые во временных таблицах вычисляются
#5 by craxx
и которые должны считаться без учета всяких пользовательских отборов
#6 by NikLab
Разделить запрос. То есть создать несколько наборов данных типа Запрос. Каждый набор, есть временная таблица. А объединять через связи наборов данных или создавать объединение.
#7 by craxx
а в самом запросе это никак не сделать? чтобы не фильтровал регистр накоплений по одному из измерений пользовательский фильтр?
#8 by StanleyMarsh
нужно лучше осознать почему меняются коэффициенты. Причин тут может быть много. Может можно настройками СКД добиться правильных коэффициентов без всяких отборов в запросах.
#9 by craxx
отборы заказчик в тз заказал
#10 by craxx
грубо говоря, во временной таблице вычисляются коэффициенты, путем деления ПланаПродажПодразделений на ЛичныеПродажиСотрудников, и в регистре ЛичныеПродажиСотрудников есть измерение Сотрудник, но в запросе я его не использую, беру обороты в целом по подразделению, все это заливаю во временную таблицу. Так вот если установить отбор по сотруднику - то коэффициенты меняются, а они не должны меняться, потому что отбор по выборке данных, в которых так же сотрудник присутствует
#11 by NikLab
Ничего не могу сказать больше пока не скинешь запрос
#12 by craxx
Запрос офигенных размеров из 23 временных таблиц разной степени вложенности. Смысла нету. Решил вопрос тупо, переименовал в конечной выборке поля измерений, грубо говоря сделал вместо Сотрудник - ПодразделениеСотрудник, и тп. Все заработало.
#13 by Defender aka LINN
Молодец. Распечатай себе на А3 табличку "Я не умею в СКД".
#14 by craxx
ты бы написал как правильно сделать
#15 by StanleyMarsh
чтобы понять какой будет итоговый результат нужно видеть как соединяются таблицы в запросе...Возможно тебе чем то поможет вкладка Ресурсы в СКД, там можно настраивать как будут вычисляться ресурсы (в частности твои коэффициенты)... Да и вообще 23 временные таблицы - много даже для разработчиков 1С уверен, что есть более оптимальное техническое решение.
#16 by fisher
Вариантов несколько на самом деле. В сложно-хитрых случаях бывает проще вообще отключать автозаполнение настроек. "При автоматическом заполнении полей наборов данных действуют следующие правила. 1. Все поля списка выборки запроса и их дочерние поля становятся доступными для настроек отчета: отбора, сортировки, выбора, группировки и т. п. Заметим, что доступность поля будет определяться по его типу. Например, поле неограниченной длины не может быть использовано в качестве поля группировки. 2. Поля виртуальных таблиц, на которые можно наложить условия в параметрах этих таблиц, становятся доступными для отбора. 3. Параметры виртуальных таблиц становятся доступными параметрами. Также становятся доступными все параметры, явно указанные в запросе."
#17 by fisher
У тебя просто поле виртуальной таблицы из запроса временной таблицы совпало по имени с полем основной выборки и на него тоже наложился фильтр. В большинстве случаев это правильное поведение по умолчанию.
#18 by Defender aka LINN
Убрать автозаполнение, прописать поля для выборки и отборов в запросе
#19 by echo77
+1 Схему свою покажи, скорее всего автозаполнение тебе все "портит"
#20 by ИС-2
переименовать поле в самой выборе. Например, в ВТ Склад, а выборке СуперСклад. И отбор делать по супе склад Или на закладке компононовщик в запросе в условиях добавить свое поле.
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С