Сумма столбца (отображается в нижнем колонтитуле) не работает на первой странице.Но работает на второй странице - PullRequest
0 голосов
/ 31 января 2019

Я работаю над отчетом о яшме.Мое требование состоит в том, чтобы показать промежуточную сумму для дебетовых и кредитных столбцов, которые я получаю из java как JRBeanCollectionDataSource.Я создал переменную и установил resetType = "Page" и вычислил как Sum.Сумма на первой странице всегда равна нулю, так как сумма на второй странице правильная.

Мое поле находится в наборе данных.Я возвращаю сумму дебетовых и кредитных значений из datasetRun.

Подданные:

<subDataset name="TransactionDataSet" uuid="1c386547-d313-475c-b023-9f1b6f198535">
        <property name="com.jaspersoft.studio.data.defaultdataadapter" value="One Empty Record"/>
        <queryString>
            <![CDATA[]]>
        </queryString>
        <field name="accountTypeName" class="java.lang.String"/>
        <field name="accountNum" class="java.lang.String"/>
        <field name="name" class="java.lang.String"/>
        <field name="transactionText" class="java.lang.String"/>
        <field name="currencyCode" class="java.lang.String"/>
        <field name="amountDebited" class="java.math.BigDecimal"/>
        <field name="amountCredited" class="java.math.BigDecimal"/>
        <field name="regionId" class="java.lang.String"/>
        <field name="departmentId" class="java.lang.String"/>
        <field name="costCenterId" class="java.lang.String"/>
        <variable name="debitSumForPage" class="java.math.BigDecimal" resetType="Page" calculation="Sum">
            <variableExpression><![CDATA[$F{amountDebited}]]></variableExpression>
            <initialValueExpression><![CDATA[java.math.BigDecimal.ZERO]]></initialValueExpression>
        </variable>
        <variable name="creditSumForPage" class="java.math.BigDecimal" resetType="Page" calculation="Sum">
            <variableExpression><![CDATA[$F{amountCredited}]]></variableExpression>
            <initialValueExpression><![CDATA[java.math.BigDecimal.ZERO]]></initialValueExpression>
        </variable>
</subDataset>

Глобальная переменная:

<variable name="totalDebitForPage" class="java.math.BigDecimal" calculation="Sum">
        <initialValueExpression><![CDATA[java.math.BigDecimal.ZERO]]></initialValueExpression>
</variable>
<variable name="totalCreditForPage" class="java.math.BigDecimal" calculation="Sum">
        <initialValueExpression><![CDATA[java.math.BigDecimal.ZERO]]></initialValueExpression>
</variable>

код возврата:

<datasetRun subDataset="TransactionDataSet" uuid="c6dc230d-6e84-4618-b973-c5cedc63dcaf">
                        <dataSourceExpression><![CDATA[$P{TransactionDatasource}]]></dataSourceExpression>
                        <returnValue fromVariable="debitSumForPage" toVariable="totalDebitForPage"/>
                        <returnValue fromVariable="creditSumForPage" toVariable="totalCreditForPage"/>
</datasetRun>

Мне нужно получить общее количество страниц на всехстраницы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...