Я хотел бы иметь пару TextFields в зависимости от значения. И "y" - значение должно быть скорректировано в зависимости от вакуума.
Когда значение "0"
Я хотел бы скрыть TextField.
Т.е. Я хотел бы скрыться staticText
и textField
если параметр red
равно "0"
и переместите синие значения вверх в jrxml-коде ниже:
<staticText>
<reportElement x="100" y="30" width="100" height="30"/>
<text><![CDATA[Red items:]]></text>
</staticText>
<textField>
<reportElement x="200" y="30" width="40" height="30"/>
<textFieldExpression>
<![CDATA[$P{red}]]>
</textFieldExpression>
</textField>
<staticText>
<reportElement x="100" y="60" width="100" height="30"/>
<text><![CDATA[Blue items:]]></text>
</staticText>
<textField>
<reportElement x="200" y="60" width="40" height="30"/>
<textFieldExpression>
<![CDATA[$P{blue}]]>
</textFieldExpression>
</textField>
Пример вывода:
//if blue = 3 and red = 2 if blue = 3 and red = 0 if blue = 0 and red = 2
Red items: 2 Blue items: 3 Red items: 2
Blue items: 3
Эти TextFields будут размещены в конце моего отчета. Как я могу сделать это?
<reportElement ...>
<printWhenExpression><![CDATA[$P{red} == 0]]></printWhenExpression>
</reportElement>
Вы можете использовать iReport для изменения этого с приятным пользовательским интерфейсом.
Таким образом, нет, я не уверен, что это возможно.
Существует опция Удалить пустую ссылку
, но она работает только в том случае, если вы хотите удалить всю строку. Здесь вы хотите удалить одну строку в определенном столбце.
В этом случае я бы рекомендовал использовать кросс-таблицу
или функцию кросс-таблиц.
Присвойте группе столбцов значение X (предположим, что X - номер столбца) И дайте группе строк значение поля цвета, отсюда вы можете динамически изменять метку, примерно так:
$F{color}==null?"": ($F{color}.equals("RED")?"Red Items":"Blue Items")