|
Как заставить СКД правильно отбирать по ресурсам при ОБЪЕДИНЕНИИ наборов | ☑ | ||
---|---|---|---|---|
0
Лефмихалыч
09.01.17
✎
11:39
|
Дано - СКД с объединением двух наборов данных, например вот такая https://yadi.sk/d/0hqGXPlq37vHht (заведется в любой конфигурации, включая пустую).
Если просто добавить поле "Ресурс" в отборы, то СКД воткнет отбор в предложение ГДЕ в каждом наборе по отдельности. А хочется, чтобы отбор на ресурсы накладывался уже после объединения. Итого, вопрос: Есть ли у СКД возможность как-то так ее заставить, чтобы отбор на ресурс накладывался уже после объединения? То есть, например, если выполнить этот отчет без отборов, то будет две строчки (так и надо). Если наложить отбор "Ресурс >= 2", то будет только одна строчка - из второго набора. Данные первого набора будут отфильтрованы начисто, т.к. первый набор состоит из идентичных строчек, значение ресурса в которых по отдельности меньше 2. Хочется в этом случае тоже видеть две строчки потому, что итог по первому набору таки больше двух. Происходит это все на 8.3.6.2299 в любом режиме. Что пробовал: 1. Включить ограничение использования в наборе, но не включать в объединении - это все равно что вообще удалить ресурс из полей отбора. 2. Пользовательское поле - это все равно, что ни чего не делать, отбор накладывается перед объединением. 3. Вычисляемое поле - результат нулевой разного сорта. Чаще всего оно не компонуется, т.к. не может найти поле. |
|||
1
DrZombi
гуру
09.01.17
✎
11:43
|
(0) Можно, установить отбор через условное оформление.
Так же можно сперва сформировать ТЗ, а потом поместить его в СКД, в качестве источника данных ;) |
|||
2
Fragster
гуру
09.01.17
✎
11:45
|
вероятно нужно вычисляемое поле с суммой по нужной группировке и уже на него отбор
|
|||
3
Лефмихалыч
09.01.17
✎
11:45
|
(1) отбор через условное оформление?.. это как?
хочется оставить объединение наборов, т.к. в реальном отчете там их чуток поболе, чем два и объединение с одной стороны упрощает сопровождение отчета, в с другой - если пользователь исключит поля каких-то наборов, то этих наборов и в объединении не будет |
|||
4
Лефмихалыч
09.01.17
✎
11:46
|
(2) ну, вот, либо у меня руки-крюки, либо так не бывает. Когда я так сделал, у меня отчет перестал формироваться с формулировкой "Поле не найдено".
Можешь показать - как это делается на примере отчета из сабжа? |
|||
5
Лефмихалыч
09.01.17
✎
11:52
|
||||
6
DailyLookingOnA Sunse
09.01.17
✎
11:52
|
||||
7
Лефмихалыч
09.01.17
✎
11:53
|
(6) у меня доступа нет туда. Что там?
|
|||
8
DailyLookingOnA Sunse
09.01.17
✎
11:56
|
1. Имеем СКД с набором данных - запрос.
2. Далее пользователь настраивает компоновщик настроек, в котором имеется отбор, например по наименованию. 3. А Надо , что бы этот отбор применялся лишь к первой таблице. Можно снять флажок "Автозаполнение" и воспользоваться расширением языка запросов для компоновки данных (это то что в фигурных скобках). С фигурными скобками пробовал - не помогало. А вот снятие галочки - помогло. Спасибо большое. |
|||
9
Лефмихалыч
09.01.17
✎
11:59
|
(6) (8) это другой вопрос и, как сделать это, я знаю. ЭТо как раз делается путем добавления поля в отборы компоновки - в первой таблице надо добавить, во второй - не добавлять. Автора под вопроса подкосила галочка "Автозаполнение" - ее надо выключить для этого. Или назвать как-то поле отбора по-другому, но тогда пользователю кукушечку снесет.
Вопрос в топике совсем другой. |
|||
10
Fragster
гуру
09.01.17
✎
12:10
|
вообще выглядит так, как будто можно просто отбор задать не на уровне отчета, а на уровне группировки, даже без вычисляемых полей
|
|||
11
kumena
09.01.17
✎
12:14
|
а почему бы не написать один запрос?
компоновка к вложенным запросам не применяет свои отборы, даже с флажком автозаполнения. |
|||
12
Fragster
гуру
09.01.17
✎
12:17
|
(11) например бывает так, что данные собираются из базы и внешнего источника, тогда не обойтись без нескольких наборов.
кстати, пример не совсем корректный, я бы в первом наборе добавил "Б", а во втором - "а". |
|||
13
Лефмихалыч
09.01.17
✎
13:01
|
(11) потому, что не хочу один запрос, см (3). В реальном отчете объединений гораздо больше двух, а такое в одном запросе сопровождать - морока. Да и в запросе таким образом будут все таблицы даже, если поля выбираются только из одной.
|
|||
14
Лефмихалыч
09.01.17
✎
13:02
|
(10) А вот это дельный совет - отбор на ресурс в группировке решил вопрос. Спасибо, Fragster!
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |