如何将 table 列页脚设置到详细信息带的底部?

How to set table column footer to the bottom of the detail band?

我在 jasperreport 中使用 table,我需要将 table 列页脚添加到底部 "group footer" 带状

之前

但目前它像这里一样生成 table

您可以看到 table(详细信息带)和组页脚带之间有很多空格..

<detail>
    <band height="80">
        <componentElement>
            <reportElement key="table1" style="tableStyle" x="1" y="0" width="552" height="80" isPrintWhenDetailOverflows="true" uuid="9a24d27b-9228-4f23-8c02-628268479882">
                <printWhenExpression><![CDATA[$V{REPORT_COUNT} == 1]]></printWhenExpression>
            </reportElement>
            <jr:table xmlns:jr="http://jasperreports.sourceforge.net/jasperreports/components" xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports/components http://jasperreports.sourceforge.net/xsd/components.xsd" whenNoDataType="AllSectionsNoDetail">
                <datasetRun subDataset="TableDataset" uuid="aad66998-86ba-485c-b8f4-3f2f6eda4796">
                    <dataSourceExpression><![CDATA[$P{datasourceItems}]]></dataSourceExpression>
                </datasetRun>
                <jr:column width="25" uuid="eb2f74b3-8006-4762-a52e-838f5e08a86f">
                    <jr:columnHeader height="40" rowSpan="2">
                        <staticText>
                            <reportElement style="tableProduct_CH" x="0" y="0" width="25" height="40" uuid="6ce8147d-c282-467a-b348-0d5cf3def735"/>
                            <textElement textAlignment="Center" verticalAlignment="Middle"/>
                            <text><![CDATA[No]]></text>
                        </staticText>
                    </jr:columnHeader>
                    <jr:columnFooter style="tableProductFooterNoLine" height="20" rowSpan="1"/>
                    <jr:detailCell height="20" rowSpan="1">
                        <textField isStretchWithOverflow="true">
                            <reportElement style="tableProduct_TD" x="0" y="0" width="25" height="20" uuid="fc581740-46a3-4602-b769-18beca53d355"/>
                            <textElement textAlignment="Center"/>
                            <textFieldExpression><![CDATA[$F{no}]]></textFieldExpression>
                        </textField>
                    </jr:detailCell>
                </jr:column> ...
            </jr:table>
        </componentElement>
    </band>
</detail>

AFIK:在使用 jr:table 组件的 jasper 报告版本 <=6.7(回答日期的当前版本)中,这 不可能

您可以在 background 带中绘制线条,然后在 groupFooter 带中添加页脚,但我建议您创建一个子报表以避免出现分页问题.

子报表将使用标准 detailcolumnFooter 波段模拟 table,您将再次在 background 波段中添加垂直线。

columnFooter 的行为方式由属性 isFloatColumnFooter 定义,因此在您的情况下 false