Jasperreports多个子报表重叠

时间:2013-12-13 14:43:24

标签: java pdf jasper-reports reporting overlapping

我有一个主要的细节,有两个子报告背靠背vertically他们没有太多的空间,因为主报告很长......我在两个子报告中都指定了FLOAT属性一切当两个填充空间的数据在IREPORT中分配时,它可以顺利运行,但是当它们有很多行时,我的意思是3 or more rows第二个子报告Materiales与下一个组件重叠...如果某个子报表需要更多空间,它会将下一个组件推下来。 TRABAJOS REALIZADOS进入Frame with Float property,但未按下框架是保持位置并被Materiales sub-report..

重叠

我的ireport设计。

enter image description here

my source code some tags are ommited by brevity

<detail>
    <band height="770" splitType="Stretch">
        .... others tags ommited by brevity
        <frame>
            <reportElement positionType="Float" x="0" y="401" width="554" height="70"/>
            <subreport runToBottom="false">
                <reportElement positionType="Float" x="1" y="1" width="553" height="69"/>
                <dataSourceExpression><![CDATA[new net.sf.jasperreports.engine.data.JRBeanCollectionDataSource($F{munichs})]]></dataSourceExpression>
                <subreportExpression class="java.io.InputStream"><![CDATA[$P{SUBREPORT_EXPRESSION}]]></subreportExpression>
            </subreport>                
        </frame>
        <frame>
            <reportElement positionType="Float" x="2" y="472" width="551" height="128"/>
            <subreport runToBottom="false">
                <reportElement positionType="Float" x="1" y="44" width="545" height="83"/>
                <dataSourceExpression><![CDATA[new net.sf.jasperreports.engine.data.JRBeanCollectionDataSource($F{venices})]]></dataSourceExpression>
                <subreportExpression class="java.io.InputStream"><![CDATA[$P{SUBREPORT_EXPRESSION_SECOND_REPORT}]]></subreportExpression>
            </subreport>
                     </frame>               
        <frame><!--this frame is not pushed down and gets overlapped...-->
            <reportElement positionType="Float" x="0" y="599" width="554" height="171"/>
            <rectangle>
                <reportElement x="2" y="1" width="180" height="20"/>
            </rectangle>
            <staticText>
                <reportElement x="2" y="1" width="178" height="20"/>
                <textElement/>
                <text><![CDATA[TRABAJOS PENDIENTES]]></text>
            </staticText>
            <rectangle>
                <reportElement x="2" y="21" width="550" height="38"/>
            </rectangle>
            <textField>
                <reportElement x="3" y="21" width="551" height="38"/>
                <textElement/>
                <textFieldExpression class="java.lang.String"><![CDATA[$F{observations}]]></textFieldExpression>
            </textField>
            <staticText>
                <reportElement x="2" y="64" width="100" height="20"/>
                <textElement/>
                <text><![CDATA[FIRMA OPERADOR: ]]></text>
            </staticText>
            <staticText>
                <reportElement x="333" y="64" width="107" height="20"/>
                <textElement/>
                <text><![CDATA[CONFORME CLIENTE:]]></text>
            </staticText>
            <image>
                <reportElement x="442" y="63" width="22" height="22"/>
                <imageExpression class="java.io.InputStream"><![CDATA[$F{sign}]]></imageExpression>
            </image>
            <staticText>
                <reportElement x="188" y="90" width="66" height="20"/>
                <textElement/>
                <text><![CDATA[FIRMA Y DNI:]]></text>
            </staticText>
            <image>
                <reportElement x="257" y="89" width="22" height="22"/>
                <imageExpression class="java.io.InputStream"><![CDATA[$F{conformity}]]></imageExpression>
            </image>
            <image>
                <reportElement x="281" y="89" width="264" height="32"/>
                <imageExpression class="java.io.InputStream"><![CDATA[$F{imageForSign}]]></imageExpression>
            </image>
            <textField>
                <reportElement x="2" y="122" width="543" height="49"/>
                <textElement/>
                <textFieldExpression class="java.lang.String"><![CDATA[$P{lopd}]]></textFieldExpression>
            </textField>
        </frame>


    </band>
</detail>

我的IReport image

enter image description here 我的PDF重叠..

enter image description here

1

2 个答案:

答案 0 :(得分:6)

您可以尝试增加细节带的高度,如果不起作用,您可以再添加一个细节,每个子报告一个。

要添加详细信息区域,请右键单击“详细信息”,然后在此频段下添加第二个频段并复制第二个子报告。

答案 1 :(得分:1)

如果您已将位置类型设置为浮动,则将高度调整到另一个子报表下方,将进行调整。 如果您进行相应的分组和放置,它也会起作用。