2015-11-07 2 views
0

Я отчаянно пытаюсь отформатировать поле «FilmID» на основе его значения. Не могли бы вы предоставить условное выражение для форматирования значений> = 3 в красном цвете?JasperStudio Как использовать условный стиль?

Conditional Style

Большое спасибо заранее!

Другой вариант этого вопроса было бы, что я сделал неправильно в этом выражении:

<style name="Style1" mode="Opaque" backcolor="#DBD82A"> 
     <conditionalStyle> 
      <conditionExpression><![CDATA[$F{Revenue} > 10000]]></conditionExpression> 
      <style mode="Opaque" backcolor="#C92B28"/> 
     </conditionalStyle> 
    </style> 
+0

Возможный дубликат [Изменить цвет текста данных поля (цвет переднего плана) на основе состояния в JasperReports] (http://stackoverflow.com/questions/8754448/change-text-field-data-color-foreground- color-based-on-condition-in-jasperrepo) –

ответ

0

Если предположить, что $F{Revenue} числовой (Integer, Double, Float ЕКК)

если вы используете яшма версия отчета 6.0 или выше нет ничего плохого в вашем выражении стиля, для отчета jasper 3.0, вам нужно new Boolean($F{Revenue} > 10000) в выражении.

Необходимо также убедиться, что вы применяете стиль к элементу отчета.

<reportElement style="style1" x="49" y="4" width="100" height="20" uuid="865e11e4-c2d4-40ac-be06-dc1359dc93c0"/> 
+0

Странно, позже в тот же день я попробовал то же самое, что и раньше, и он работал как для строковых, так и для числовых значений. –

+0

Что он работал с $ F {Revenue}, поскольку String действительно странно !, отчет jasper должен выйти с ошибкой «Оператор <не определен для типа аргументов String, int« –

+0

Возможно, имеет значение, если для языка отчета установлено значение groovy или Java? Также только! = Работает со строкой, а == нет. Как бы то ни было. –

Смежные вопросы