Раскрасить строки СКД по отбору

1. alex_bitti 139 27.07.21 14:27 Сейчас в теме
Может кто-нибудь знает, можно ли как-то не сильно заморачиваясь окрасить строки по группировке например, имеется отчет с Подразделением на 3-м уровне группировки, пользователям хочется чтобы Отдел ИТ был одним цветом, АХО другим, Управленческий третьим и.т.д, как это реализовать в простом отчете не СКД я знаю, причем выбор цвета через реквизит в справочнике добавлен, но хочется еще в СКД
По теме из базы знаний
Вознаграждение за ответ
Показать полностью
Найденные решения
12. homer_ 78 27.07.21 14:51 Сейчас в теме +0.6 $m
Заводим доп реквизит числовой в подразделении. Для каждого подразделения указываем кодировку (Например 1 - красный, 2 зелены и тд) Далее в условном оформлении СКД ставим отбор по данному реквизиту.
Идиотский вариант: Сделать для каждого подразделения свою группировку и сое условное оформление.
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
11. dandykry 10 27.07.21 14:48 Сейчас в теме
(1) Условное оформление или всего отчета, или только 1 группировки, смотря как задача стоит.
В нем отбор для каждого цвета своя настройка
Подразделение.Наименование Содержит "Отдел ИТ".
Подразделение.Наименование Содержит "Управленческий ".
и т д
В самом оформлении цвет. В полях выбрать поле подразделение, чтоб раскрашивалось.

Это самый простой способ
14. alex_bitti 139 27.07.21 14:54 Сейчас в теме
(11) можно скрин? я уже это пытаюсь сделать с утра, вариант через вычисляемое поле не вариант, так как я не знаю сколько подразделений и цветов, поэтому добавил цвет в реквизит подразделения, вот примерно чего я хочу, нашел здесь но оно не работает, чего то не хватает, видно отборы все очищаются, отчет просто зависает и отваливается по таймауту

Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки,
                                                  СтандартнаяОбработка)
												  
	ДокументРезультат.ФиксацияСлева = 1;
	
	ДокументРезультат.ФиксацияСверху = ОтчетыСервер.КоличествоСтрокЗаголовка(КомпоновщикНастроек);
	
	СтандартнаяОбработка = Ложь;
	Настройки = КомпоновщикНастроек.Настройки;
	

	
	
	ЭлементУсловногоОформления = Настройки.УсловноеОформление.Элементы.Добавить();

	ЭлементОтбора = ЭлементУсловногоОформления.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
	
	ДопАналитикаЭл = Справочники.Подразделение.НайтиПоКоду("Т00000129");
	
	ЦветЗаливки = WebЦвета.Роса;				

	
	ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ДопАналитика"); 
	ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
	ЭлементОтбора.ПравоеЗначение = ДопАналитикаЭл; 

	ЭлементУсловногоОформления.Оформление.УстановитьЗначениеПараметра("ЦветФона", ЦветЗаливки);

	
	КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
	МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, Настройки,ДанныеРасшифровки);

	ПроцессорКомпоновки = Новый ПроцессорКомпоновкиДанных;
	ПроцессорКомпоновки.Инициализировать(МакетКомпоновки,,ДанныеРасшифровки);

	ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
	ПроцессорВывода.УстановитьДокумент(ДокументРезультат);
	ПроцессорВывода.Вывести(ПроцессорКомпоновки);	
	
КонецПроцедуры
Показать
2. erazh 27.07.21 14:36 Сейчас в теме
1. Раскраска идет через макеты. Можно наиболее часто используемые раскрасить в макете.
2. Использовать программный вывод отчета через ТабДок. А как работать с его областями - знаешь.
3. alex_bitti 139 27.07.21 14:38 Сейчас в теме
(2) у СКД нет макета или как?
4. erazh 27.07.21 14:38 Сейчас в теме
6. alex_bitti 139 27.07.21 14:39 Сейчас в теме
(4) тот что есть не подойдет, я не смогу даже приблизительно повторить то что там рисуется по иерархии
5. erazh 27.07.21 14:39 Сейчас в теме +0.4 $m
Но лучше через условное оформление. Так проще.
7. alex_bitti 139 27.07.21 14:41 Сейчас в теме
(5) условное оформление не подходит потому что там только примитивный тип в отборе можно использоватть, ссылка не поддерживается
9. erazh 27.07.21 14:46 Сейчас в теме
(7)Серьезно!? А разве перечисление не ссылочный тип?!
Прикрепленные файлы:
10. alex_bitti 139 27.07.21 14:47 Сейчас в теме
(9) справочники.НайтиПоКоду() там тоже есть?
13. erazh 27.07.21 14:51 Сейчас в теме
(10) 1. Это тебе надо тебе надо в модуль залазить и программно настраивать компоновщик, а потом эти настройки использовать при программном выводе.
8. alex_bitti 139 27.07.21 14:44 Сейчас в теме
(5) я знаю что есть какой то программный способ в модуле сделать отбор и окрасить, даже что то тут нашел, но оно не работает, можно простой пример как сделать это программно или ссылку где почитать, сам не найду
12. homer_ 78 27.07.21 14:51 Сейчас в теме +0.6 $m
Заводим доп реквизит числовой в подразделении. Для каждого подразделения указываем кодировку (Например 1 - красный, 2 зелены и тд) Далее в условном оформлении СКД ставим отбор по данному реквизиту.
Идиотский вариант: Сделать для каждого подразделения свою группировку и сое условное оформление.
15. alex_bitti 139 27.07.21 15:13 Сейчас в теме
(12) у меня цвет хранится в виде строки (стандартно) в реквизите подразделения, в простом табдоке через макет ручной все норм, хочется через модуль вывода результата в СКД сделать нормально
16. homer_ 78 27.07.21 15:16 Сейчас в теме
(15) я не понимаю. В теме написано что вы хотите через СКД. Мой вариант это и предлагает через условное оформление СКД.
17. alex_bitti 139 27.07.21 15:21 Сейчас в теме
(16) Вариант предполагает изменение запроса либо добавление вычисляемых полей, в схеме несколько наборов данных, даже не знаю что проще, то о чем я говорю тоже СКД только в модуле мне кажется это сделать будет легче, просто я так не делал, спрашиваю что не так, выше код процедуры примерно
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот