В Crystal Reports при условном форматировании используется два типа свойств: многозначные свойства и свойства – триггеры.
Примером многозначных свойств могут служить, например, свойства Font и Color. Здесь мы имеем возможность выбора из нескольких значений. Как правило, при условном форматировании таких свойств используются выражения if-then-else. Пример использования таких свойств мы рассмотрели в прошлом шаге.
С другой стороны, существует много свойств, могущих принимать только два значения: отображать – не отображать, обрамлять – не обрамлять, добавить тень – не добавлять тени, и т. д. Такие свойства и носят название свойства-триггеры.
При условном форматировании эти свойства устанавливаются с помощью логических выражений, возвращающих true или false.
Давайте к нашим заказам добавим тень, если сумма заказа больше 200.
Идем Format Editor, вкладка Border. Там есть свойство Drop Shadow. Добавить тень:
Нажатием на знакомую уже кнопку открываем редактор формул форматирования и вводим формулу:
{@Sum}>200
Смотрим окно предварительного просмотра:
Другим примером применения свойств триггеров может быть условное подавление поля. Например, в вашей БД имеется булево поле с признаком оплаты. Создаем текстовое поле с надписью "Оплачено", и помещаем его в отчет в секцию Details. Настраиваем условное форматирование (свойство Suppress) так, чтобы подавлять вывод текстового поля при значении поля БД false. В результате в отчете надпись "Оплачено" будет отображаться только в нужных записях.
Практика показывает, что применение свойств-триггеров является, пожалуй, самым эффективным и простым способом условного форматирования.