JasperReports:在变量的表达式中使用变量

时间:2014-11-11 06:55:38

标签: variables jasper-reports

我正在使用 Jaspersoft Studio 并尝试将变量设置为另一个变量的值(实际上,我需要在另一个变量中使用两个变量的总和)

所以我有两个变量,A和B.我需要将A放入B.每当我使用文本字段输出A时,它工作正常。如果在变量B中,我放了一个($ V {A}),我尝试打印B,我得到一个null。

有没有人知道为什么会这样?

报告X包含返回变量

的子报告Y.
<returnValue subreportVariable="EXPENDITURES_TOTAL_VAR" toVariable="EXPENDITURES_TOTAL_VAR" incrementerFactoryClass=""/>

(注意两个报告中的变量名称相同)

报告X然后包含另一个变量

<variable name="STOTAL_VAR" class="java.lang.Double" calculation="Sum">
    <variableExpression><![CDATA[$V{EXPENDITURES_TOTAL_VAR}]]></variableExpression>
</variable>

这个工作:

    <textField>
        <reportElement x="120" y="1" width="70" height="30" uuid="f0e81b0f-ddd3-4f31-9711-cfdeb64f36b2"/>
        <textFieldExpression><![CDATA[$V{EXPENDITURES_TOTAL_VAR}]]></textFieldExpression>
    </textField>

这不是:

    <textField>
        <reportElement x="310" y="1" width="100" height="30" uuid="263973e7-33b1-4343-a76c-3edbe5506d66"/>
        <textFieldExpression><![CDATA[$V{STOTAL_VAR}]]></textFieldExpression>
    </textField>

1 个答案:

答案 0 :(得分:0)

因为这是搜索Jasper报告并在其他变量中使用变量时的首批SO命中之一,但这并没有任何帮助-也许这里的答案可以帮助其他人寻找有关如何使用变量的答案在iReport的另一个变量中:

来自这里:http://www.jasperassistant.com/docs/guide/ch06s08.html,简短的答案是:

是的,您可以在iReport中的另一个变量中使用一个变量-但必须首先声明要在另一个变量中使用的变量-因此该变量的顺序很重要。

希望这对某人有帮助。