Jasper reports Jasper报表变量打印零值

Jasper reports Jasper报表变量打印零值,jasper-reports,Jasper Reports,我正在编写jasper报告,其中我使用以下SQL查询: select SOURCE, count(*) as total from CASE_UPLOADS where UPLOAD_DT >= '20150601' and UPLOAD_DT <= '20150630' group by SOURCE order by SOURCE 我创建了如下变量: <variable name="PR" class="java.lang.Integer" calculation="Su

我正在编写jasper报告,其中我使用以下SQL查询:

select SOURCE, count(*) as total
from CASE_UPLOADS
where UPLOAD_DT >= '20150601'
and UPLOAD_DT <= '20150630'
group by SOURCE
order by SOURCE
我创建了如下变量:

<variable name="PR" class="java.lang.Integer" calculation="Sum">
    <variableExpression><![CDATA[($F{source} == 'Periodic_Report') ? $F{total} : 0]]></variableExpression>
</variable>

此变量每次打印零值

如果我将条件子句更改如下:

<variable name="PR" class="java.lang.Integer" calculation="Sum">
    <variableExpression><![CDATA[($F{source} == 'Periodic Report') ? 0 : $F{total}]]></variableExpression>
 </variable>

然后其打印总数为56列

字段声明:

<field name="source" class="java.lang.String"/>
<field name="total" class="java.lang.Long"/>


有人能告诉我这里出了什么问题吗?

定期报告-表达式$F{source}==“定期报告”)中有下划线,其中的值是“定期报告”@Arasu,这是错误的。如果不使用“u”,它也会给出相同的结果,这$F{source}.toString().equalsIgnoreCase(“定期报告”)在报告上打印时,$F{source}的值是多少?检查它是否用引号括起来。如果我将$F{source}和$V{PR}打印在相邻的详细栏中,则其打印方式如下:新应用程序0、定期报告0、RD/RC 0
<field name="source" class="java.lang.String"/>
<field name="total" class="java.lang.Long"/>