3

空のテキスト フィールド (文字列または bigdecimal 値を含む) が、レポート用にプルされた単一行に配置され、空白行が表示されます。

null 行を含む空白行を削除するために、その行isRemoveLineWhenBlankのレポート要素のプロパティを使用しました。しかし、それはうまくいきません。

誰かがこれで私を助けてくれますか?

スナップ: ここに画像の説明を入力

出力スナップ: ここに画像の説明を入力

jrxml :

<?xml version="1.0" encoding="UTF-8"  ?>
<!-- Created with iReport - A designer for JasperReports -->
<!DOCTYPE jasperReport PUBLIC "//JasperReports//DTD Report Design//EN" "http://jasperreports.sourceforge.net/dtds/jasperreport.dtd">
<jasperReport
         name="WEB_PREVIEW"
         columnCount="1"
         printOrder="Horizontal"
         orientation="Portrait"
         pageWidth="595"
         pageHeight="900"
         columnWidth="535"
         columnSpacing="0"
         leftMargin="30"
         rightMargin="30"
         topMargin="20"
         bottomMargin="20"
         whenNoDataType="NoPages"
         isTitleNewPage="false"
         isSummaryNewPage="false">
    <property name="ireport.scriptlethandling" value="0" />
    <property name="ireport.encoding" value="UTF-8" />
    <import value="java.util.*" />
    <import value="net.sf.jasperreports.engine.*" />
    <import value="net.sf.jasperreports.engine.data.*" />

    <parameter name="GROSS_RENTAL_INCOME_SQPA_LABEL" isForPrompting="false" class="java.lang.String"/>
    <parameter name="GROSS_RENTAL_INCOME_SQPA" isForPrompting="false" class="java.math.BigDecimal"/>
    <defaultValueExpression ><![CDATA["C:\\Development_New\\Cyprus\\Cyprus\\WebRoot\\report\\"]]></defaultValueExpression>
    </parameter>
    <background>
            <band height="0"  isSplitAllowed="true" >
            </band>
        </background>
        <title>
            <band height="0"  isSplitAllowed="true" >
            </band>
        </title>
        <pageHeader>
            <band height="32"  isSplitAllowed="true" >
                <textField isStretchWithOverflow="true" isBlankWhenNull="true" evaluationTime="Now" hyperlinkType="None"  hyperlinkTarget="Self" >
                    <reportElement
                        x="367"
                        y="105"
                        width="96"
                        height="12"
                        key="textField"
                        positionType="Float"
                        isRemoveLineWhenBlank="true">
                            <printWhenExpression><![CDATA[new Boolean($P{GROSS_RENTAL_INCOME_SQPA}!=null)]]></printWhenExpression>
                        </reportElement>
                    <box></box>
                    <textElement>
                        <font pdfFontName="Helvetica-Bold" size="8" isBold="true"/>
                    </textElement>
                <textFieldExpression   class="java.lang.String"><![CDATA[$P{GROSS_RENTAL_INCOME_SQPA_LABEL}]]></textFieldExpression>
                </textField>
                <textField isStretchWithOverflow="true" pattern="###,##0.00" isBlankWhenNull="true" evaluationTime="Now" hyperlinkType="None"  hyperlinkTarget="Self" >
                    <reportElement
                        x="472"
                        y="105"
                        width="48"
                        height="12"
                        key="textField"
                        positionType="Float"
                        isRemoveLineWhenBlank="true">
                            <printWhenExpression><![CDATA[new Boolean($P{GROSS_RENTAL_INCOME_SQPA}!=null)]]></printWhenExpression>
                        </reportElement>
                    <box></box>
                    <textElement>
                        <font size="8"/>
                    </textElement>
                <textFieldExpression   class="java.math.BigDecimal"><![CDATA[$P{GROSS_RENTAL_INCOME_SQPA}]]></textFieldExpression>
                </textField>
                </band>
        </detail>
        <columnFooter>
            <band height="0"  isSplitAllowed="true" >
            </band>
        </columnFooter>
        <pageFooter>
            <band height="0"  isSplitAllowed="true" >
            </band>
        </pageFooter>
        <summary>
            <band height="0"  isSplitAllowed="true" >
            </band>
        </summary>
</jasperReport>
4

2 に答える 2

0

解決策はフレームではありません。

テキスト フィールドに printWhenExpression を追加します。

<printWhenExpression><![CDATA[$P{par1}!=null]]></printWhenExpression></reportElement>

サンプル:

<textField isBlankWhenNull="true">
<reportElement x="719" y="0" width="52" height="11">
    <printWhenExpression><![CDATA[$P{par1}!=null]]></printWhenExpression>
</reportElement>
<box>
    <topPen lineWidth="1.0"/>
    <leftPen lineWidth="1.0"/>
    <bottomPen lineWidth="1.0"/>
    <rightPen lineWidth="1.0"/>
</box>
<textElement />
<textFieldExpression><![CDATA[$P{par1}]]></textFieldExpression>

于 2012-04-17T19:24:11.613 に答える