В настоящее время я пытаюсь применить стиль, который в основном меняет цвет текстового поля показателей (детали) в кросс-таблице, чтобы указать дату, выбранную с помощью параметра, который пользователь должен указать в начале отчета. Вот шаги, которые я выполнил:
Я создал параметр $P{Date} как java.sql.timestamp и проверил "для подсказки"
Создал тот же параметр $P{Date} в моем запросе набора данных с той же информацией, что и предыдущий параметр (этот набор данных будет использоваться для заполнения кросс-таблицы)
Создайте тот же параметр $P{Date} в моем элементе кросс-таблицы, а также ту же информацию, что и раньше.
В свойствах кросс-таблицы в «Наборе данных» я добавил свой параметр с тем же именем «Дата» и выражением $P{Date} и оставил карту параметров пустой
Пока отчет работает нормально, и параметр данных работает для моей кросс-таблицы, фильтруя данные по дате, выбранной для параметра.
Создал свой условный стиль (Style1) со следующим выражением:
AND(MONTH(${crosstab_month}).equals(MONTH($P{Date})), YEAR(${crosstab_month}).equals(YEAR($P{Date})), DAY(${crosstab_month}).equals(01))
${crosstab_month} — это группа столбцов, в которой отображается дата (содержит первый день каждого месяца, а также является отметкой времени).
Теперь, когда я запускаю отчет, я не могу заставить его работать, я помещаю разметку во все поля как «стилизованные», а в «Стиль и детали печати» - как Style1.
Я что-то забыл? Я не понимаю, почему это не работает, потому что, если я изменю $P{Date} на NOW() в выражении стиля, это сработает... значение $P{Date} каким-то образом неправильно оценивается как дата/ отметка времени?