Tuesday, 8 March 2016

Tip : Detail Overflow Vs Stretch With Overflow in Jasper Reports - When to use & How to avoid repetaiton(Images or text ) when Detail Overflow for a Text Field

Hi All,

This tip is useful when you work with grid reports.

Detail Overflow :
The element will be printed when the band overflows to a new page or a new column.

Stretch with Overflow : 
Tell the report engine to allow the text field to stretch downwards in order to display all its text when it doesn't fit in the defined text field height.
This property will work irrespective of cell height that you provide.

(NOTE : You can hover the mouse on the property to view the purpose of it, this way you can learn each and every property available in Studio)

Both are the properties of a text field.


Example Details Overflow : 
On the text field(all text fields) select
Position Type = Float
Stretch Type = Relative to Tallest Object
Detail Overflow = check this
Stretch with Overflow = check this

Page-1 output :
 
Page-2 output:

From the above images, what you can understand is when Detail overflow is checked the text Static Text and Image filed data is repeating in next page.
If you uncheck it it will not repeat in page-2 :

for example
On the text field(all text fields) select
Position Type = Float
Stretch Type = Relative to Tallest Object
Detail Overflow = Uncheck this 
Stretch with Overflow = check this

Page-1 output portion in the bottom :
Page-2 output

Hope it helps someone.! 
Cheers.!!

 Sample JRXML : Japsersoft stduio Professional 6.2


<?xml version="1.0" encoding="UTF-8"?>
<!-- Created with Jaspersoft Studio version 6.2.0.final using JasperReports Library version 6.2.0  -->
<!-- 2016-03-08T12:50:05 -->
<jasperReport xmlns="http://jasperreports.sourceforge.net/jasperreports" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports http://jasperreports.sourceforge.net/xsd/jasperreport.xsd" name="Test" pageWidth="595" pageHeight="842" whenNoDataType="AllSectionsNoDetail" columnWidth="555" leftMargin="20" rightMargin="20" topMargin="20" bottomMargin="20" uuid="f86bcfb7-d774-451f-9f46-c58f57e0efbb">
    <property name="com.jaspersoft.studio.data.sql.tables" value=""/>
    <property name="com.jaspersoft.studio.data.defaultdataadapter" value="foodmart"/>
    <queryString>
        <![CDATA[select * from dummy]]>
    </queryString>
    <field name="sno" class="java.lang.Integer"/>
    <field name="filed1" class="java.lang.Integer"/>
    <field name="filed2" class="java.lang.String"/>
    <columnHeader>
        <band height="30">
            <staticText>
                <reportElement x="0" y="0" width="120" height="30" uuid="0cd17b54-755c-42fe-9363-7266a24337e3"/>
                <box>
                    <topPen lineWidth="0.5" lineStyle="Solid" lineColor="#000000"/>
                    <leftPen lineWidth="0.5" lineStyle="Solid" lineColor="#000000"/>
                    <bottomPen lineWidth="0.5" lineStyle="Solid" lineColor="#000000"/>
                    <rightPen lineWidth="0.5" lineStyle="Solid" lineColor="#000000"/>
                </box>
                <text><![CDATA[Static Text]]></text>
            </staticText>
            <staticText>
                <reportElement x="170" y="0" width="130" height="30" uuid="f216b782-3080-4ba8-8cc3-2609c684f4be"/>
                <box>
                    <topPen lineWidth="0.5" lineStyle="Solid" lineColor="#000000"/>
                    <leftPen lineWidth="0.5" lineStyle="Solid" lineColor="#000000"/>
                    <bottomPen lineWidth="0.5" lineStyle="Solid" lineColor="#000000"/>
                    <rightPen lineWidth="0.5" lineStyle="Solid" lineColor="#000000"/>
                </box>
                <text><![CDATA[filed1]]></text>
            </staticText>
            <staticText>
                <reportElement x="300" y="0" width="90" height="30" uuid="71985024-8b9a-49ae-81e0-6d6e9335cec7"/>
                <box>
                    <topPen lineWidth="0.5" lineStyle="Solid" lineColor="#000000"/>
                    <leftPen lineWidth="0.5" lineStyle="Solid" lineColor="#000000"/>
                    <bottomPen lineWidth="0.5" lineStyle="Solid" lineColor="#000000"/>
                    <rightPen lineWidth="0.5" lineStyle="Solid" lineColor="#000000"/>
                </box>
                <text><![CDATA[filed2]]></text>
            </staticText>
            <staticText>
                <reportElement x="120" y="0" width="50" height="30" uuid="d45c0977-d842-424b-ab44-7edd5672b72d"/>
                <box>
                    <topPen lineWidth="0.5" lineStyle="Solid" lineColor="#000000"/>
                    <leftPen lineWidth="0.5" lineStyle="Solid" lineColor="#000000"/>
                    <bottomPen lineWidth="0.5" lineStyle="Solid" lineColor="#000000"/>
                    <rightPen lineWidth="0.5" lineStyle="Solid" lineColor="#000000"/>
                </box>
                <text><![CDATA[Image]]></text>
            </staticText>
        </band>
    </columnHeader>
    <detail>
        <band height="30">
            <textField isStretchWithOverflow="true">
                <reportElement positionType="Float" stretchType="RelativeToTallestObject" x="0" y="0" width="120" height="30" isPrintWhenDetailOverflows="true" uuid="fb93f1ac-7f7a-48fe-afa7-4aab5370cbec"/>
                <box>
                    <topPen lineWidth="0.5" lineStyle="Solid" lineColor="#000000"/>
                    <leftPen lineWidth="0.5" lineStyle="Solid" lineColor="#000000"/>
                    <bottomPen lineWidth="0.5" lineStyle="Solid" lineColor="#000000"/>
                    <rightPen lineWidth="0.5" lineStyle="Solid" lineColor="#000000"/>
                </box>
                <textFieldExpression><![CDATA[""]]></textFieldExpression>
            </textField>
            <textField isStretchWithOverflow="true">
                <reportElement positionType="Float" stretchType="RelativeToTallestObject" x="170" y="0" width="130" height="30" uuid="b5a72533-c1b6-4af9-a0b7-06d099981190"/>
                <box>
                    <topPen lineWidth="0.5" lineStyle="Solid" lineColor="#000000"/>
                    <leftPen lineWidth="0.5" lineStyle="Solid" lineColor="#000000"/>
                    <bottomPen lineWidth="0.5" lineStyle="Solid" lineColor="#000000"/>
                    <rightPen lineWidth="0.5" lineStyle="Solid" lineColor="#000000"/>
                </box>
                <textFieldExpression><![CDATA[$F{filed1}]]></textFieldExpression>
            </textField>
            <textField isStretchWithOverflow="true">
                <reportElement positionType="Float" stretchType="RelativeToTallestObject" x="300" y="0" width="90" height="30" uuid="bab5a3e9-22db-46b0-9302-f7614a6f6add"/>
                <box>
                    <topPen lineWidth="0.5" lineStyle="Solid" lineColor="#000000"/>
                    <leftPen lineWidth="0.5" lineStyle="Solid" lineColor="#000000"/>
                    <bottomPen lineWidth="0.5" lineStyle="Solid" lineColor="#000000"/>
                    <rightPen lineWidth="0.5" lineStyle="Solid" lineColor="#000000"/>
                </box>
                <textFieldExpression><![CDATA[$F{filed2}]]></textFieldExpression>
            </textField>
            <textField isStretchWithOverflow="true">
                <reportElement positionType="Float" stretchType="RelativeToTallestObject" x="0" y="0" width="120" height="30" uuid="d4338fad-1803-491e-90ef-8e01cb3de80d"/>
                <box>
                    <topPen lineWidth="0.5" lineStyle="Solid" lineColor="#000000"/>
                    <leftPen lineWidth="0.5" lineStyle="Solid" lineColor="#000000"/>
                    <bottomPen lineWidth="0.5" lineStyle="Solid" lineColor="#000000"/>
                    <rightPen lineWidth="0.5" lineStyle="Solid" lineColor="#000000"/>
                </box>
                <textFieldExpression><![CDATA["Hello"]]></textFieldExpression>
            </textField>
            <textField isStretchWithOverflow="true">
                <reportElement positionType="Float" stretchType="RelativeToTallestObject" x="170" y="0" width="130" height="30" uuid="8cdac468-0a3f-4ed3-844b-473e1371f92e"/>
                <box>
                    <topPen lineWidth="0.5" lineStyle="Solid" lineColor="#000000"/>
                    <leftPen lineWidth="0.5" lineStyle="Solid" lineColor="#000000"/>
                    <bottomPen lineWidth="0.5" lineStyle="Solid" lineColor="#000000"/>
                    <rightPen lineWidth="0.5" lineStyle="Solid" lineColor="#000000"/>
                </box>
                <textFieldExpression><![CDATA[""]]></textFieldExpression>
            </textField>
            <textField isStretchWithOverflow="true">
                <reportElement positionType="Float" stretchType="RelativeToTallestObject" x="120" y="0" width="50" height="30" uuid="6ab2f4f8-04cd-4a6f-b945-3a7af4b8c3fa"/>
                <box>
                    <topPen lineWidth="0.5" lineStyle="Solid" lineColor="#000000"/>
                    <leftPen lineWidth="0.5" lineStyle="Solid" lineColor="#000000"/>
                    <bottomPen lineWidth="0.5" lineStyle="Solid" lineColor="#000000"/>
                    <rightPen lineWidth="0.5" lineStyle="Solid" lineColor="#000000"/>
                </box>
                <textFieldExpression><![CDATA["Hello"]]></textFieldExpression>
            </textField>
        </band>
    </detail>
</jasperReport>

1 comment: