我设计了一个包含4个子报告的报告,问题是当我打印报告时,第4个报告有一个数据可以填满整个页面,但它只使用了第一页的一半,然后填充所有剩余的第二页中的数据。我怎么能填写第一页?
<detail>
<band height="392" splitType="Stretch">
<subreport>
<reportElement x="0" y="0" width="555" height="100" isRemoveLineWhenBlank="true"/>
<subreportParameter name="SUBREPORT_DIR">
<subreportParameterExpression><![CDATA[$P{SUBREPORT_DIR}]]></subreportParameterExpression>
</subreportParameter>
<subreportParameter name="reciept_id">
<subreportParameterExpression><![CDATA[$P{reciept_id}]]></subreportParameterExpression>
</subreportParameter>
<connectionExpression><![CDATA[$P{REPORT_CONNECTION}]]></connectionExpression>
<subreportExpression class="java.lang.String"><![CDATA[$P{SUBREPORT_DIR} + "alkanes_report.jasper"]]></subreportExpression>
</subreport>
<subreport>
<reportElement positionType="Float" x="0" y="192" width="555" height="100" isRemoveLineWhenBlank="true"/>
<subreportParameter name="SUBREPORT_DIR">
<subreportParameterExpression><![CDATA[$P{SUBREPORT_DIR}]]></subreportParameterExpression>
</subreportParameter>
<subreportParameter name="reciept_id">
<subreportParameterExpression><![CDATA[$P{reciept_id}]]></subreportParameterExpression>
</subreportParameter>
<connectionExpression><![CDATA[$P{REPORT_CONNECTION}]]></connectionExpression>
<subreportExpression class="java.lang.String"><![CDATA[$P{SUBREPORT_DIR} + "brick_alkane.jasper"]]></subreportExpression>
</subreport>
<subreport>
<reportElement positionType="FixRelativeToBottom" x="1" y="292" width="554" height="100" isRemoveLineWhenBlank="true" isPrintInFirstWholeBand="true"/>
<subreportParameter name="SUBREPORT_DIR">
<subreportParameterExpression><![CDATA[$P{SUBREPORT_DIR}]]></subreportParameterExpression>
</subreportParameter>
<subreportParameter name="reciept_id">
<subreportParameterExpression><![CDATA[$P{reciept_id}]]></subreportParameterExpression>
</subreportParameter>
<connectionExpression><![CDATA[$P{REPORT_CONNECTION}]]></connectionExpression>
<subreportExpression class="java.lang.String"><![CDATA[$P{SUBREPORT_DIR} + "bases2.jasper"]]></subreportExpression>
</subreport>
<subreport>
<reportElement positionType="Float" x="0" y="100" width="555" height="92" isRemoveLineWhenBlank="true"/>
<subreportParameter name="SUBREPORT_DIR">
<subreportParameterExpression><![CDATA[$P{SUBREPORT_DIR}]]></subreportParameterExpression>
</subreportParameter>
<subreportParameter name="reciept_id">
<subreportParameterExpression><![CDATA[$P{reciept_id}]]></subreportParameterExpression>
</subreportParameter>
<connectionExpression><![CDATA[$P{REPORT_CONNECTION}]]></connectionExpression>
<subreportExpression class="java.lang.String"><![CDATA[$P{SUBREPORT_DIR} + "alkanes_addittions.jasper"]]></subreportExpression>
</subreport>
</band>
</detail>
答案 0 :(得分:1)
可能发生的事情是需要增加子报表的页面大小。
在主报表中,您的子报表高度在此处设置:height="92"
。这用于设置渲染子报表的最小高度。将其变大或变小既不会对您的问题有所帮助,也不会伤害您但是,如果子报表中的页面大小小于主报表中的页面大小,则可以解释您所描述的行为。