我的报告有问题.我用文本和参数编写输出.当我把参数.结果将显示文本和参数.但问题是当我不是参数的关键时,结果仍然显示输出的文本字段.我在用java做.我不知道是什么问题.
这是我的代码:
(($P{daterangefrom} != null) && ($P{daterangeto}!=null) ) ?
" From ( " + $P{daterangefrom} + " - " + $P{daterangeto} + " )"
: null
Run Code Online (Sandbox Code Playgroud)
任何人都知道我的配方有什么问题.
您必须确保参数的值不为空.
例如,您可以在Guava库的帮助下进行检查.
例子:
<?xml version="1.0" encoding="UTF-8"?>
<jasperReport ..>
<import value="com.google.common.base.*"/>
<parameter name="daterangefrom" class="java.lang.String"/>
<parameter name="daterangeto" class="java.lang.String"/>
<title>
<band height="79" splitType="Stretch">
<textField isBlankWhenNull="true">
<reportElement x="185" y="12" width="100" height="20" isRemoveLineWhenBlank="true"/>
<textElement/>
<textFieldExpression><![CDATA[(!Strings.isNullOrEmpty($P{daterangefrom}) &&
!Strings.isNullOrEmpty($P{daterangeto})) ?
" From ( " + $P{daterangefrom} + " - " + $P{daterangeto} + " )"
: null]]></textFieldExpression>
</textField>
</band>
</title>
</jasperReport>
Run Code Online (Sandbox Code Playgroud)
不要忘记isRemoveLineWhenBlank和isBlankWhenNulltextField的属性.
| 归档时间: |
|
| 查看次数: |
3952 次 |
| 最近记录: |