Есть ли способ установить значение по умолчанию для поля в отчете? У меня есть много полей String в отчете и вы хотите, чтобы они отображали "0,00", когда они равны нулю.
JasperReports: значение по умолчанию вместо 'null'
Ответ 1
Предположим, что имя поля - "значение", в "Выражение текстового поля":
($F{value} != null) ? $F{value} : "0.00"
Ответ 2
medopal ответ хороший, но 2 дополнения:
1) Вы можете сделать синтаксис короче:
($F{field_name}) ? $F{field_name} : "0.00"
2) Убедитесь, что ваши данные "else" имеют тот же класс, что и значение поля, иначе вы получите ошибки, когда будете пытаться принуждать числа к строке и т.д. и т.д. Это было то, что, когда я начал, Я перепутал.
Ответ 3
Вы также можете выбрать "Пустое, когда null" в свойствах текстового поля, если вы этого хотите. Другие варианты более гибкие, но это делает трюк очень быстро и легко.
Ответ 4
Вы пытались установить шаблон в текстовом поле?
Если вы используете iReport, это можно найти в свойствах текстового поля в разделе Text Field Properties
.
Попробуйте что-то в строках ###0.00
для представления 1234.56, которое всегда будет отображать 0.00, даже если оно равно null.
Ответ 5
Это самый простой способ использовать функцию Coalesce() or NVL()
базы данных в вашем запросе источника данных для ограничения нулевых данных в вашем отчете.
Но это зависит от того, разрешено ли вам изменять запрос источника данных или нет. Если нет, вы можете пойти на другие решения, представленные в предыдущих ответах.