Java Jasperr报告多个子报告重叠
我有一个主详细信息,有两个子报告背靠背Java Jasperr报告多个子报告重叠,java,pdf,jasper-reports,reporting,overlapping,Java,Pdf,Jasper Reports,Reporting,Overlapping,我有一个主详细信息,有两个子报告背靠背垂直它们没有太多空间,因为主报告很长。。。。我在两个子报告中都指定了FLOAT属性,当两个子报告的数据都填充在IREPORT的空间中时,一切都会顺利进行,但当它们有很多行时,我的意思是3行或更多行第二个子报告materials与下一个组件重叠。。。我想如果某个子报表需要更多空间,它会向下推下下一个组件。TRABAJOS REALIZADOS被放入一个具有浮动属性的框架中,但没有向下推。框架保持位置,并被materials子报告重叠。 我的ireport设计
垂直它们没有太多空间,因为主报告很长。。。。我在两个子报告中都指定了FLOAT
属性,当两个子报告的数据都填充在IREPORT
的空间中时,一切都会顺利进行,但当它们有很多行时,我的意思是3行或更多行
第二个子报告materials
与下一个组件重叠。。。我想如果某个子报表需要更多空间,它会向下推下下一个组件。TRABAJOS REALIZADOS
被放入一个具有浮动属性的框架中,但没有向下推。框架保持位置,并被materials子报告重叠。
我的ireport设计
my source code一些标记以简洁著称
<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>
.... 其他标签则以简洁著称
我的i报告图像
我的PDF文件有重叠..
:您可以尝试增加详细信息栏的高度,如果不起作用,您可以为每个子报告添加一个详细信息
若要添加详细栏位,请右键单击“详细”并添加第二个栏位,然后复制该栏位下的第二个子报表。调整另一个子报表下方的高度,因为您已将“位置类型”设置为“浮动”,它将进行调整。
如果您进行分组并相应放置,它也会起作用。您的帖子不太清楚。请将子报表positionType的属性设置为Float。这会解决你的问题。请不要在问题标题中加上“已解决”。而是接受一个答案。(你可以接受你自己的答案,但只能在48小时后接受。)我已经尝试了很多解决方法,只有你的解决方法对我有效,非常感谢。。。添加一个新的详细信息栏
,并将我的资料放在那里,效果很好。但随后报告会显示在另一页中。我想在一页中显示3个子报告。怎么做?。你能帮忙吗?!!!只需为每个子报表添加详细栏位。我发现最好将每个子报表放在主报表的单独详细栏位中。这样,就没有重叠的问题了。改进这一点,使它看起来像一个答案,而不是一个评论。我在jasper Report中有4年的Php初始化和导出经验。对我来说,详细阐述这一点非常困难,因为总是有多种方法来完成单个任务。我将设法弄清楚我的答案。