Страница 1 из 1
Кросс отчет: подсветить максимум по столбцу
Добавлено: 19 май 2014, 10:47
DmitryRu
Мне необходимо подсветить максимумы с столбцах кросс таблицы.
Как и рекомендуется здесь, я создал хэш-таблицу и заполнил ее
http://forumru.stimulsoft.com/viewtopic ... 19&p=12577&
Проблема в том, что в событии CrossTab1_Sum1_Conditions (при обработке Conditions) в аргументах события StiValueEventArgs нет информации, для какой колонки это событие.
Рекомендуется делать это через tag.
Однако, при обработке события создания тэга CrossTab1_Sum1_GetTag тоже нет информации о столбце.
А при обработке события CrossTab1_Sum1_ProcessCell не понятно как задать Tag.
В итоге, не понимаю, как мне написать выражения для условия (Conditions), где взять номер текущего столбца.
Re: Кросс отчет: подсветить максимум по столбцу
Добавлено: 19 май 2014, 13:03
Леонид
День добрый!
Сталкивался с подобной задачей. В событии
ProcessCell вашей ячейки
CrossTab1_Sum1 пишете следущее:
Код: Выделить всё
decimal value = 0;
// красим согласно условию в тот или иной цвет
if (decimal.TryParse(e.Text, out value))
e.Cell.Field.Brush = (value > 0) ? new StiSolidBrush(Color.Chartreuse) : new StiSolidBrush(Color.HotPink);
Номер текущего столбца в ячейках сумм можно определять так с помощью
e.Cell.SummaryIndex (см. подбробнее здесь
http://forumru.stimulsoft.com/viewtopic ... dex#p11339).
Номер текущего столбца (колонки) и строки можно определять так (см. также здесь h[url]ttp://forumru.stimulsoft.com/search.php?keywords=e.Column+%3D%3D&t=2880&sf=msgonly[/url]):
Строка -
e.Column, колонка -
e.Row
Re: Кросс отчет: подсветить максимум по столбцу
Добавлено: 19 май 2014, 13:49
DmitryRu
Re: Кросс отчет: подсветить максимум по столбцу
Добавлено: 21 май 2014, 10:51
HighAley
Здравствуйте.
Я так понимаю проблема решена?
Будем рады вам помочь, если возникнут ещё вопросы.
Также пишите, если чего-то не нашли в нашей документации, мы стараемся её сделать лучше.
Спасибо.
Re: Кросс отчет: подсветить максимум по столбцу
Добавлено: 21 май 2014, 15:49
DmitryRu
Да, проблема решена.
Подскажите, где в документации можно узнать о таких магических переменных:
IsFirstPass, IsSecondPass
или
Код: Выделить всё
Stimulsoft.Report.Components.StiConditionHelper.ApplyFont(sender,
new System.Drawing.Font("Arial", 8.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, 204),
Stimulsoft.Report.Components.StiConditionPermissions.All);
Re: Кросс отчет: подсветить максимум по столбцу
Добавлено: 23 май 2014, 12:38
HighAley
Здравствуйте.
На данный момент этого в документации нет.
Что именно вы хотели узнать?
Мы обязательно добавим необходимое вам описание в документацию
Спасибо.
Re: Кросс отчет: подсветить максимум по столбцу
Добавлено: 26 май 2014, 13:57
DmitryRu
Здравствуйте.
Мне кажется, документация должна описывать и тонкие моменты использования продукта.
На мой взгляд, в документации не описан двухпроходный режим построения отчета - что происходит в этом случае.
И, для вычисления того, как можно изменить шрифт, тоже пришлось сначала генерить код .cs, а потом из него выкусывать вышеприведенный кусок.
В идеале, мне кажется, и это могло бы быть в документации - хотя бы сама идея о том, что сначала можно сохранить репорт как .cs файл, а из него узнать, как можно использовать имеющиеся возможности.
Re: Кросс отчет: подсветить максимум по столбцу
Добавлено: 26 май 2014, 16:18
Aleksey
Здравствуйте,
К сожалению, но нет возможности описать все моменты. Продукт очень обширный, постоянно что-то добавляется, выходят новые версии.
Документация постоянно обновляется, изменяется и дополняется.
Спасибо.