Вход | Регистрация
 

СКД, убрать пустые группировки после применения отбора

СКД, убрать пустые группировки после применения отбора
Я
   Momus
 
11.09.20 - 09:38
Отчет СКД, вывод группировкой  в виде: организация -> подразделение -> Сотрудник. Для сотрудника вывожу некоторые ресурсы, а затем по ним делаю отбор, в результате применения которого группировка по подразделениям может не содержать сотрудников. Как убрать "пустые" подразделения? До применения отбора по ресурсам они были не пустыми. Пробовал установить отборы на заполненность, но эффекта нет.
   SleepyHead
 
1 - 11.09.20 - 09:42
Надо посчитать для группировки по подраздлению количество записей, которое будет после наложения отбора, и ставить отбор еще и по ним

Я в СКД не очень силен, поэтому  такие моменты продумываю заранее. Если отбор может быть наложен, то делаю дополнительнео поле в наборе данных, по которому можно было бы наложить отбор. Или же дорабатываю набор данных до его вывода в СКД, но тогда набор надо делать внешним.
   Momus
 
2 - 11.09.20 - 09:48
(1) я тоже подумал о подсчете количества сотрудников для группировки, но тогда этот служебный ресурс придется выводить в отчет, а этого не очень хочется делать.
Это отчет по зуп, который построен на представлениях. Все свои расчеты я перенес в скд, т.к. с построением запросов для зупа я не разобрался. Можно конечно постобработкой убрать служебный ресурс, но что-то совсем некрасиво выходит
   SleepyHead
 
3 - 11.09.20 - 09:48
(2) Так тебе с шашечками или ехать?
   Momus
 
4 - 11.09.20 - 09:51
(3) мне кажется, что есть неочевидный, но красивый способ. А (1) я оставлю на потом)
   SleepyHead
 
5 - 11.09.20 - 09:54
(4) Мне тоже так кажется. Напиши, пожалуйста, если найдешь.
   Momus
 
6 - 11.09.20 - 09:54
А как посчитать количество записей после применения отбора?)
   toypaul
 
7 - 11.09.20 - 10:02
Можно попробовать вычислить через ВычислитьВыражениеСГруппировкойМассив по подчиненной группировке и с заданным отбором и на вычисленное значение (количество записей в массиве) наложить отбор. Но метод из (1) будет надежнее
   Momus
 
8 - 11.09.20 - 10:04
(7) ВычислитьВыражениеСГруппировкойМассив работает с записями после применения моего первого отбора?
   toypaul
 
9 - 11.09.20 - 10:18
(8) нет. у нее есть свой отбор в котором можно повторить все тоже самое. по сути это ответ на вопрос (6)
   SleepyHead
 
10 - 11.09.20 - 12:43
(6) ВОт с этим обычно и самая большая засада. Я не знаю, как сослаться на элемент отбора в самой схеме.

Зато в "ПриКомпоновкеРезультата" можно отборы прочитать и применить к набору данных, выгруженному в таблицу значений.
Так что пофиг на красоту и неочевидность, которую никто не оценит.

Работа с наборами-объектами не запрещена и не является чем-то некошерным.

Список тем форума
Рекламное место пустует  Рекламное место пустует
Программист всегда исправляет последнюю ошибку.
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.