Детальный раздел оставил пробелы между полями. Как я могу устранить это? - PullRequest
0 голосов
/ 16 марта 2011

Я использую последнюю версию Jasper Reports. Я использовал подробный раздел двух кадров Jasper Reports. Один кадр содержит все необходимые поля в нем и установлен на вершине = 0, второй кадр точно ниже первого и содержит только один файл. Когда текст в текстовых полях первого фрейма нормальный (умещается по ширине и не растягивается), результат нормальный, означает, что второй фрейм точно напечатан ниже первого. но если одно из текстовых полей растягивается, если содержимое над потоками, тогда между двумя кадрами остается некоторое пространство.

Я написал здесь XML моего подробного раздела.

<detail>
        <band height="40" splitType="Stretch">
            <frame>
                <reportElement stretchType="RelativeToTallestObject" x="0" y="0" width="430" height="20" isPrintWhenDetailOverflows="true"/>
                <textField isStretchWithOverflow="true" isBlankWhenNull="true">
                    <reportElement stretchType="RelativeToTallestObject" x="129" y="0" width="50" height="20"/>
                    <box leftPadding="1">
                        <pen lineWidth="1.0"/>
                        <topPen lineWidth="1.0"/>
                        <leftPen lineWidth="1.0"/>
                        <bottomPen lineWidth="1.0"/>
                        <rightPen lineWidth="1.0"/>
                    </box>
                    <textElement>
                        <font size="9"/>
                    </textElement>
                    <textFieldExpression class="java.lang.String"><![CDATA[$F{netWeight}]]></textFieldExpression>
                </textField>
                <textField isStretchWithOverflow="true" isBlankWhenNull="true">
                    <reportElement stretchType="RelativeToTallestObject" x="179" y="0" width="50" height="20"/>
                    <box leftPadding="1">
                        <pen lineWidth="1.0"/>
                        <topPen lineWidth="1.0"/>
                        <leftPen lineWidth="1.0"/>
                        <bottomPen lineWidth="1.0"/>
                        <rightPen lineWidth="1.0"/>
                    </box>
                    <textElement>
                        <font size="9"/>
                    </textElement>
                    <textFieldExpression class="java.lang.String"><![CDATA[$F{metalRate}]]></textFieldExpression>
                </textField>
                <textField isStretchWithOverflow="true" isBlankWhenNull="true">
                    <reportElement stretchType="RelativeToTallestObject" x="0" y="0" width="54" height="20"/>
                    <box leftPadding="1">
                        <pen lineWidth="1.0"/>
                        <topPen lineWidth="1.0"/>
                        <leftPen lineWidth="1.0"/>
                        <bottomPen lineWidth="1.0"/>
                        <rightPen lineWidth="1.0"/>
                    </box>
                    <textElement>
                        <font size="9"/>
                    </textElement>
                    <textFieldExpression class="java.lang.String"><![CDATA[$F{productName}]]></textFieldExpression>
                </textField>
                <textField isStretchWithOverflow="true" isBlankWhenNull="true">
                    <reportElement stretchType="RelativeToTallestObject" x="229" y="0" width="22" height="20"/>
                    <box leftPadding="1">
                        <pen lineWidth="1.0"/>
                        <topPen lineWidth="1.0"/>
                        <leftPen lineWidth="1.0"/>
                        <bottomPen lineWidth="1.0"/>
                        <rightPen lineWidth="1.0"/>
                    </box>
                    <textElement>
                        <font size="9"/>
                    </textElement>
                    <textFieldExpression class="java.lang.String"><![CDATA[$F{ratePer}]]></textFieldExpression>
                </textField>
                <textField isStretchWithOverflow="true" isBlankWhenNull="true">
                    <reportElement stretchType="RelativeToTallestObject" x="251" y="0" width="25" height="20"/>
                    <box leftPadding="1">
                        <pen lineWidth="1.0"/>
                        <topPen lineWidth="1.0"/>
                        <leftPen lineWidth="1.0"/>
                        <bottomPen lineWidth="1.0"/>
                        <rightPen lineWidth="1.0"/>
                    </box>
                    <textElement>
                        <font size="9"/>
                    </textElement>
                    <textFieldExpression class="java.lang.String"><![CDATA[$F{ratePerUnit}]]></textFieldExpression>
                </textField>
                <textField isStretchWithOverflow="true" isBlankWhenNull="true">
                    <reportElement stretchType="RelativeToTallestObject" x="364" y="0" width="66" height="20"/>
                    <box leftPadding="1">
                        <pen lineWidth="1.0"/>
                        <topPen lineWidth="1.0"/>
                        <leftPen lineWidth="1.0"/>
                        <bottomPen lineWidth="1.0"/>
                        <rightPen lineWidth="1.0"/>
                    </box>
                    <textElement>
                        <font size="9"/>
                    </textElement>
                    <textFieldExpression class="java.lang.String"><![CDATA[$F{totalAmount}]]></textFieldExpression>
                </textField>
                <textField isStretchWithOverflow="true" isBlankWhenNull="true">
                    <reportElement stretchType="RelativeToTallestObject" x="104" y="0" width="25" height="20"/>
                    <box leftPadding="1">
                        <pen lineWidth="1.0"/>
                        <topPen lineWidth="1.0"/>
                        <leftPen lineWidth="1.0"/>
                        <bottomPen lineWidth="1.0"/>
                        <rightPen lineWidth="1.0"/>
                    </box>
                    <textElement>
                        <font size="9"/>
                    </textElement>
                    <textFieldExpression class="java.lang.String"><![CDATA[$F{piece}]]></textFieldExpression>
                </textField>
                <textField isStretchWithOverflow="true" isBlankWhenNull="true">
                    <reportElement stretchType="RelativeToTallestObject" x="54" y="0" width="50" height="20"/>
                    <box leftPadding="1">
                        <pen lineWidth="1.0"/>
                        <topPen lineWidth="1.0"/>
                        <leftPen lineWidth="1.0"/>
                        <bottomPen lineWidth="1.0"/>
                        <rightPen lineWidth="1.0"/>
                    </box>
                    <textElement>
                        <font size="9"/>
                    </textElement>
                    <textFieldExpression class="java.lang.String"><![CDATA[$F{itemName}]]></textFieldExpression>
                </textField>
                <textField isStretchWithOverflow="true" isBlankWhenNull="true">
                    <reportElement stretchType="RelativeToTallestObject" x="320" y="0" width="44" height="20"/>
                    <box leftPadding="1">
                        <pen lineWidth="1.0"/>
                        <topPen lineWidth="1.0"/>
                        <leftPen lineWidth="1.0"/>
                        <bottomPen lineWidth="1.0"/>
                        <rightPen lineWidth="1.0"/>
                    </box>
                    <textElement>
                        <font size="9"/>
                    </textElement>
                    <textFieldExpression class="java.lang.String"><![CDATA[$F{vatAmount}]]></textFieldExpression>
                </textField>
                <textField isStretchWithOverflow="true" isBlankWhenNull="true">
                    <reportElement stretchType="RelativeToTallestObject" x="276" y="0" width="44" height="20"/>
                    <box leftPadding="1">
                        <pen lineWidth="1.0"/>
                        <topPen lineWidth="1.0"/>
                        <leftPen lineWidth="1.0"/>
                        <bottomPen lineWidth="1.0"/>
                        <rightPen lineWidth="1.0"/>
                    </box>
                    <textElement>
                        <font size="9"/>
                    </textElement>
                    <textFieldExpression class="java.lang.String"><![CDATA[$F{labourAmount}]]></textFieldExpression>
                </textField>
            </frame>
            <frame>
                <reportElement x="0" y="20" width="430" height="20" isRemoveLineWhenBlank="true" isPrintWhenDetailOverflows="true">
                    <printWhenExpression><![CDATA[$F{narration} != null && (!$F{narration}.equals("NONE")) && $F{narration}.length > 0]]></printWhenExpression>
                </reportElement>
                <staticText>
                    <reportElement x="0" y="0" width="50" height="20"/>
                    <box leftPadding="1">
                        <pen lineWidth="1.0"/>
                        <topPen lineWidth="1.0"/>
                        <leftPen lineWidth="1.0"/>
                        <bottomPen lineWidth="1.0"/>
                        <rightPen lineWidth="1.0"/>
                    </box>
                    <textElement>
                        <font size="9"/>
                    </textElement>
                    <text><![CDATA[Narration]]></text>
                </staticText>
                <textField isStretchWithOverflow="true" isBlankWhenNull="true">
                    <reportElement x="50" y="0" width="380" height="20" isPrintWhenDetailOverflows="true"/>
                    <box leftPadding="1">
                        <pen lineWidth="1.0"/>
                        <topPen lineWidth="1.0"/>
                        <leftPen lineWidth="1.0"/>
                        <bottomPen lineWidth="1.0"/>
                        <rightPen lineWidth="1.0"/>
                    </box>
                    <textElement>
                        <font size="9"/>
                    </textElement>
                    <textFieldExpression class="java.lang.String"><![CDATA[$F{narration}]]></textFieldExpression>
                </textField>
            </frame>
        </band>
    </detail>

1 Ответ

0 голосов
/ 17 марта 2011

У меня есть решение, поэтому я публикую его здесь, поэтому любой, кто столкнется с той же проблемой, будет использовать это.

Попробуйте установить кадры на positionType = "Поплавок".

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...