JasperReports экспортировал в Excel, игнорирующий цвет фона?

Только следующий блок (заключенный в {...}) после условия if выполняется условно, следующие блоки выполняются всегда. Таким образом,

if(y == 'vv03'||y == 'vv3' ){b.value = "0 "}{c.value = "12"}{d.value = "300"}

означает, что b.value = "0 " выполняется только если y == 'vv03'||y == 'vv3', но c.value = "12" и d.value = "300" выполняются безоговорочно.

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

if(y == 'vv03'||y == 'vv3' ){b.value = "0 "; c.value = "12"; d.value = "300"}

И то же самое верно и для других двух if с.

5
задан Alex K 28 January 2012 в 16:12
поделиться

2 ответа

Вы пробовали идею, предложенную в комментарии самой процедуры, к которой Вы обращаетесь?

Сначала, как создать новый стиль отчета с условием:

Недавние выпуски JasperReports включают стили отчета, которые делают это немного легче - Вы больше не должны создавать прямоугольник.

Я использую iReport для создания моих стилей - существует область “стилей”, которая по умолчанию стыкуется с области “Library”. При создании этого видимым, можно создать новый стиль в библиотеке стилей. На экране, который открывается, дают стилю имя (скажите “EvenOddRowStyle” и нажмите "Add" под кнопкой “Style Conditions”. Use one of the expressions that Brian gave and press Apply. and in the "Common" section press the “…” рядом с “Цветом фона” и выберите цвет фона, который Вы хотите. Наконец, при выполнении с отчетом применяют тот стиль ко всем полям в строках, которые Вы хотите выделить. Просто перетащите стиль от области стилей на поле.

Затем, как определить стиль, который будет применен при экспорте в Excel:

определение нового стиля с выражением условия:

Boolean.valueOf( $V{PAGE_COUNT}.intValue() % 2 == 0 )

на нем, не используя прямоугольник и печать, когда выражение на нем!

4
ответ дан 13 December 2019 в 22:19
поделиться

Кроме того, убедитесь, что в условных стилях, которые вы создаете, отмечена опция "непрозрачный"... Если нет, цвет фона никогда не будет отображаться в отчете excel (никогда!!!)....

Также опция "непрозрачный" должна быть отмечена в текстовых полях....

И если вы заметили, что текстовые поля никогда не принимают стиль, который вы им задали, попробуйте установить передний цвет и фон на null, в панели свойств каждого текстового поля (это работает для меня)...

Надеюсь, это поможет... пока.

6
ответ дан 13 December 2019 в 22:19
поделиться
Другие вопросы по тегам:

Похожие вопросы: