为什么细节带会在第二页上成长?

时间:2016-06-07 19:20:11

标签: jasper-reports

我正在定义发票报表,发票中可能包含n个项目(行)。我定义了一个数据集,以便显示项目而无需子报表。在这里,我的细节带:

<detail>
    <band height="275" splitType="Stretch">
        <rectangle>
            <reportElement x="0" y="0" width="60" height="16" uuid="590f4cac-fba0-4e0b-aa74-db059a817946"/>
        </rectangle>
        <rectangle>
            <reportElement x="60" y="0" width="140" height="16" uuid="1cc31301-e884-4648-952d-a68bcaa12b23"/>
        </rectangle>
        <rectangle>
            <reportElement x="200" y="0" width="31" height="16" uuid="ac690ad3-a913-454f-80d0-574505609db1"/>
        </rectangle>
        <rectangle>
            <reportElement x="231" y="0" width="100" height="16" uuid="6d623fd0-df6f-4ffd-b92b-8f18e0d2d5b2"/>
        </rectangle>
        <rectangle>
            <reportElement x="331" y="0" width="37" height="16" uuid="afef801a-3280-4810-8d85-c1f591d2b75b"/>
        </rectangle>
        <staticText>
            <reportElement x="3" y="2" width="44" height="11" uuid="f525bb2b-106a-44a3-9fb0-817f1eeb8260"/>
            <textElement>
                <font size="6"/>
            </textElement>
            <text><![CDATA[Artikel]]></text>
        </staticText>
        <staticText>
            <reportElement x="63" y="2" width="126" height="11" uuid="0f97aa9e-cb83-4a95-92fc-fdc01e1506f1"/>
            <textElement>
                <font size="6"/>
            </textElement>
            <text><![CDATA[Beschreibung]]></text>
        </staticText>
        <staticText>
            <reportElement x="207" y="2" width="22" height="11" uuid="6234d14c-abe2-482e-b6bb-f1c65dc19005"/>
            <textElement textAlignment="Right">
                <font size="6"/>
            </textElement>
            <text><![CDATA[Menge]]></text>
        </staticText>
        <staticText>
            <reportElement x="237" y="2" width="92" height="11" uuid="2bd9712e-b8be-4b90-823d-a530f6c7dcba"/>
            <textElement textAlignment="Right">
                <font size="6"/>
            </textElement>
            <text><![CDATA[Einheitspreis]]></text>
        </staticText>
        <staticText>
            <reportElement x="340" y="2" width="25" height="11" uuid="dbf02042-62f2-4b70-9b8b-fae588cb8055"/>
            <textElement textAlignment="Right">
                <font size="6"/>
            </textElement>
            <text><![CDATA[Rabatt]]></text>
        </staticText>
        <rectangle>
            <reportElement x="368" y="0" width="70" height="16" uuid="54f1f443-d742-4287-8ae6-d06b04682bf4"/>
        </rectangle>
        <rectangle>
            <reportElement x="437" y="0" width="34" height="16" uuid="f23aa7d5-3eb9-478a-a799-a8acfe96d7af"/>
        </rectangle>
        <rectangle>
            <reportElement x="471" y="0" width="84" height="16" uuid="7b4a3a55-b161-44c7-8512-33a127d68ba3"/>
        </rectangle>
        <staticText>
            <reportElement x="381" y="2" width="54" height="11" uuid="e12d9869-3dcd-4b81-89f8-b3a3c6b2e28c"/>
            <textElement textAlignment="Right">
                <font size="6"/>
            </textElement>
            <text><![CDATA[MwSt. Grundlage]]></text>
        </staticText>
        <staticText>
            <reportElement x="441" y="2" width="28" height="11" uuid="fb7f8a0e-1632-454f-9742-5179831c8dc4"/>
            <textElement textAlignment="Right">
                <font size="6"/>
            </textElement>
            <text><![CDATA[MwSt.]]></text>
        </staticText>
        <staticText>
            <reportElement x="505" y="2" width="47" height="11" uuid="da9a079f-dc7e-4fef-9f31-eabd65340967"/>
            <textElement textAlignment="Right">
                <font size="6"/>
            </textElement>
            <text><![CDATA[MwSt. Betrag]]></text>
        </staticText>
        <rectangle>
            <reportElement x="0" y="16" width="60" height="248" uuid="cd7f5e9a-aeae-425c-8783-22084707b432"/>
        </rectangle>
        <rectangle>
            <reportElement x="60" y="16" width="140" height="248" uuid="01ee9155-aed8-4a55-8160-5f73ac6b1085"/>
        </rectangle>
        <rectangle>
            <reportElement x="200" y="16" width="31" height="248" uuid="66698906-69ee-4fdc-8a04-ce14372bd065"/>
        </rectangle>
        <rectangle>
            <reportElement x="231" y="16" width="100" height="248" uuid="0c260fbe-b300-4962-ad7b-ff7666fa2baa"/>
        </rectangle>
        <rectangle>
            <reportElement x="331" y="16" width="37" height="248" uuid="1902828b-f84c-440c-8e3f-24cdffea33ec"/>
        </rectangle>
        <rectangle>
            <reportElement x="368" y="16" width="69" height="248" uuid="880c1b82-4316-493a-b5b3-c4342bbb74c9"/>
        </rectangle>
        <rectangle>
            <reportElement x="437" y="16" width="34" height="248" uuid="ee1c4e69-b69e-4cc8-9b83-24e9867012de"/>
        </rectangle>
        <rectangle>
            <reportElement x="471" y="16" width="84" height="248" uuid="eade602d-0afa-4a6e-a3aa-5de350dc2ee5"/>
        </rectangle>
        <componentElement>
            <reportElement x="0" y="16" width="555" height="17" uuid="be7e1e99-0990-4f3d-beaf-b304c08be036"/>
            <jr:list xmlns:jr="http://jasperreports.sourceforge.net/jasperreports/components" xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports/components http://jasperreports.sourceforge.net/xsd/components.xsd" printOrder="Vertical">
                <datasetRun subDataset="items" uuid="ab906203-20bb-4347-806b-ef000f212bf9">
                    <dataSourceExpression><![CDATA[new net.sf.jasperreports.engine.data.JRBeanCollectionDataSource($F{righeDocumento})]]></dataSourceExpression>
                </datasetRun>
                <jr:listContents height="17" width="555">
                    <textField>
                        <reportElement x="3" y="2" width="56" height="14" uuid="448ef958-9459-4ab1-8896-f5b65dd7a552"/>
                        <textFieldExpression><![CDATA[$F{articolo}]]></textFieldExpression>
                    </textField>
                    <textField>
                        <reportElement x="63" y="2" width="136" height="14" uuid="24634427-d38f-4679-8996-a96d5051774b"/>
                        <textFieldExpression><![CDATA[$F{descrizione}]]></textFieldExpression>
                    </textField>
                    <textField>
                        <reportElement x="236" y="2" width="92" height="14" uuid="20bda0b8-a3c0-47e7-bdff-555c481a894d"/>
                        <textElement textAlignment="Right"/>
                        <textFieldExpression><![CDATA[new DecimalFormat("0.00 €").format($F{prezzo})]]></textFieldExpression>
                    </textField>
                    <textField>
                        <reportElement x="207" y="2" width="21" height="14" uuid="61766ba4-57d0-4509-ac41-ffd7bb4e12ef"/>
                        <textElement textAlignment="Right"/>
                        <textFieldExpression><![CDATA[$F{quantita}]]></textFieldExpression>
                    </textField>
                    <textField>
                        <reportElement x="338" y="2" width="27" height="14" uuid="535705c6-d0b6-401d-b767-efafb3ba42f7"/>
                        <textElement textAlignment="Right"/>
                        <textFieldExpression><![CDATA[$F{sconto} == null ? "" : $F{sconto}+" %"]]></textFieldExpression>
                    </textField>
                    <textField>
                        <reportElement x="439" y="2" width="28" height="14" uuid="0dc5fa14-efac-4c5b-898a-9a9152e588f7"/>
                        <textElement textAlignment="Right"/>
                        <textFieldExpression><![CDATA[$F{aliquota}]]></textFieldExpression>
                    </textField>
                    <textField>
                        <reportElement x="375" y="2" width="59" height="14" uuid="2772b49b-5355-463d-bebf-856537a416a3"/>
                        <textElement textAlignment="Right"/>
                        <textFieldExpression><![CDATA[new DecimalFormat("0.00 €").format($F{costo})]]></textFieldExpression>
                    </textField>
                    <textField>
                        <reportElement x="482" y="2" width="70" height="14" uuid="0259a153-a0c2-4589-b296-fdca4ceeed2b"/>
                        <textElement textAlignment="Right"/>
                        <textFieldExpression><![CDATA[new DecimalFormat("0.00 €").format($F{iva})]]></textFieldExpression>
                    </textField>
                </jr:listContents>
            </jr:list>
        </componentElement>
    </band>
</detail>

结果是看下面的图片:

包含多行的示例: Example with many rows

有两行的示例:

Example with two rows

问题在于,当我有更多行时,它包含页眉和页脚的第二页(我的问题中未显示),细节为空。我们可以从照片中看到的其余部分都可以。 为什么?我该如何解决?

1 个答案:

答案 0 :(得分:2)

您选择了一种奇怪的方式来创建此报告,通常的方法是使详细信息带代表发票中的1条文章行(因此详细信息区域的高度为14)

然后,如果您需要在页面底部绘制线条,则可以始终使用背景波段。

现在发生了什么?,可能列表中的列表溢出,下面也有空白空间,它不能在同一页面上创建另一个并将空间移动到下一页。

  

解决方案
使用jasper报告的常规方式,包含线条的数据源,columnHeader波段中的标题,详细信息区域中的字段(高度14)和垂直线条   背景乐队,也出口excel等将更清洁。   

  如果您想保留列表,请将所有矩形移动到   背景乐队和减少细节带的高度剩余   组件(标题+列表高度)