Шаг 38 - Условное форматирование полей - эксперт выделения

Я уже упоминал в одном из первых шагов о том, что Crystal Reports позволяет производить так называемое контекстное форматирование, т.е. динамически изменять форматирование полей в зависимости от их значения. Самым простым инструментом для контекстного форматирования является Эксперт выделения (Highlighting expert). Для него , однако, существует ограничение: он может быть применен только к числовым полям (включая денежные).

Отмечаем в отчете требуемое поле, и щелкаем правой кнопкой мыши. В появившемся контекстном меню выбираем Highlighting expert. Открывается окно:

38_1.gif (9435 b)

В левой части находится список условий, в правой части – поля, где эти условия устанавливаются. В данном примере я взял поле суммы заказа, и применил условие grate then (более чем) 200. Справа внизу установлено для этого условия красный шрифт на желтом фоне. Можно также задать обрамление поля. Еще ниже находится образчик, что должно получиться. К одному полю можно применить несколько условий. В окне нет кнопки Добавить. Для того, чтобы добавить новое условие, необходимо в списке щелкнуть надпись new item.

Смотрим в окне предварительного просмотра:

38_2.gif (7602 b)

Как я сказал, к полю можно применить несколько условий. Но при этом необходимо следить, чтобы они не конфликтовали друг с другом. Кроме того, важен порядок следования условий в списке. Crystal Reports проверяет условия по списку сверху вниз. Например, значения более 1000 надо выделить синим цветом, а более 2000 – красным. Если в списке сначала будет стоять условие "более 2000", а затем "более 1000", то все записи со значением более 100 будут выделены синим цветом. Если условия поменять местами, все получится как надо. Менять условия местами можно с помощью кнопок со стрелками.


Предыдущий Шаг | Следующий Шаг | Оглавление
Автор Юрий Гвоздев - 16.02.2003