Jasper reports 为什么我的表情比记录差1?

Jasper reports 为什么我的表情比记录差1?,jasper-reports,Jasper Reports,我有一份使用iReport制作的报告,我有一个等式,可以帮助我找到重复的估计装运变量,并使初始数字保持不变,但之后显示的数字显示为0。我之所以想要这个,是因为报告显示了对销售订单所做的更改,但我不希望报告显示该人员每次都被收取了最初估计的装运金额 我用来寻找复制品的方程式是 $V{SOID_Count}<=1?$F{SOITEM_UNITPRICE}:0 您的问题是,$V{estimatedShipping}在变量$V{shipPriceDif}之后进行评估,因为它在变量定义中位于之后,

我有一份使用iReport制作的报告,我有一个等式,可以帮助我找到重复的
估计装运
变量,并使初始数字保持不变,但之后显示的数字显示为
0
。我之所以想要这个,是因为报告显示了对销售订单所做的更改,但我不希望报告显示该人员每次都被收取了最初估计的装运金额

我用来寻找复制品的方程式是

$V{SOID_Count}<=1?$F{SOITEM_UNITPRICE}:0

您的问题是,
$V{estimatedShipping}
在变量
$V{shipPriceDif}
之后进行评估,因为它在变量定义中位于之后,或者将其移到上方或转储它

只需计算
文本字段中的差异

<textField pattern="#,##0.00;-#,##0.00" isBlankWhenNull="true">
    <reportElement x="455" y="0" width="100" height="20" isRemoveLineWhenBlank="true" uuid="c236c087-e6f4-4de6-a3d6-8abb8b798346"/>
    <textElement textAlignment="Center"/>
    <textFieldExpression><![CDATA[$V{estimatedShipping}.doubleValue()-$F{SHIPCARTON_FREIGHTAMOUNT}.doubleValue()]]></textFieldExpression>
</textField>

您的预期输出是什么?“数字落后一行”,将数字上移一行似乎没有意义。。。你能在下面做一张表格,显示你想要什么吗。。。这是一个可以帮助您快速格式化预期输出的链接。这不是我想要的输出:/。您的输出将其设置为第一个估计值700-58.38=641.62,这是正确的,但第二个值是0-57.12=584.50。那是不对的。我希望它显示0-57.12=-57.12。谢谢你的帮助,彼得@阿什顿,最新答案。。。(即使我更喜欢我的;)嗯,为什么我把$V{estimatedShipping}-$F{SHIPCARTON_FREIGHTAMOUNT}放到一个变量中,然后把它放在文本字段中,它不会工作0.0?@Ashton首先你把它们倒过来,然后$V{estimatedShipping}会在另一个之后进行计算…,看看你变量的顺序…)。。。。但最重要的是,不需要这个变量……我想顺序是,如果你在另一个表达式中使用它,它需要在(上面)之前求值
<textField pattern="#,##0.00;-#,##0.00" isBlankWhenNull="true">
    <reportElement x="455" y="0" width="100" height="20" isRemoveLineWhenBlank="true" uuid="c236c087-e6f4-4de6-a3d6-8abb8b798346"/>
    <textElement textAlignment="Center"/>
    <textFieldExpression><![CDATA[$V{estimatedShipping}.doubleValue()-$F{SHIPCARTON_FREIGHTAMOUNT}.doubleValue()]]></textFieldExpression>
</textField>
+-------+-----------+--------+------------+
|  SO#  | Estimated | Actual | Difference |
+-------+-----------+--------+------------+
| 46137 | 700       | 58,38  | 641,62     |
| 46137 | 0         | 57,12  | -57.12     |
| 46137 | 0         | 28,29  | -28,29     |
| 46148 | 0,85      | 267,32 | -266,47    |
+-------+-----------+--------+------------+