Условное выделение данных в FastReport .Net

Dmitriy Fedyashov

Бывает, что нужно выделить некоторые данные при анализе таблиц. Обычно при просмотре бумажного варианта, мы делаем это специальным маркером-выделителем. Но почему бы не делать это сразу, во время формирования таблицы?

FastReport .Net позволяет выделять данные цветом в зависимости от заданного условия. Яркий пример использования условного выделения - статистические данные в сводных таблицах (матрицах).

Создадим матричный отчет. Воспользуемся данными из базы nwind.xml, которая применяется в демонстрационных отчетах FastReport .Net. Используем таблицу MatrixDemo.

Получился вот такой простой шаблон:

Если запустить отчет, мы увидим сухую статистику по доходности компании, принесенной сотрудниками по месяцам. Но, допустим, мы хотим выделить ячейки с доходностью больше 3000р в месяц.

Выбираем ячейку [Revenue]. На панели инструментов нажимаем пиктограмму:

В появившемся окне можно создавать условия выделения и стиль текста или фона объекта.

Добавим условие Value > 3000. Цвет может быть и градиентным, и "стеклянным".

Можно добавлять сколь угодно много условий для одного объекта. Добавим еще одно: Value >1000.

Так как у нас уже два условия, нужно учитывать их порядок. Если переместить второе условие наверх, то желтыми будут ячейки как со значением >1000, так и со значением >3000. Это произойдет потому, что FastReport .Net отрабатывает условия по порядку, и, так как Value > 1000 охватывает и значения > 3000, второе условие не будет применяться. Учитывайте это при использовании нескольких условий для одного объекта. Теперь посмотрим на результат наших стараний:

Если вы хотите выделять цветом и колонки Total, придется добавить аналогичные условия для ячейки в этом столбце.

Итак, путем нехитрых манипуляций мы получили наглядную сводную таблицу, не требующую дальнейшего анализа с выделителем в руках.

Интернет-магазин
FASTREPORT.NET
 
 
FastReport.Net - Библиотека генерации отчётов и создания документов для .NET 8, Blazor, .NET Core, ASP.NET, MVC и WinForms. Возможно использование в средах Microsoft Visual Studio 2022 и JetBrains Rider.

Страница сайта http://test.interface.ru
Оригинал находится по адресу http://test.interface.ru/home.asp?artId=38319