使用JasperReports修复了Excel中的标题

Att*_*cus 2 jasper-reports export-to-excel

如何使用JapserReports创建带有固定标头的Excel报告?我的意思是当我滚动Excel文件时,我需要修复标题.

Jac*_*oen 8

目前可以通过在每个报告的jrxml文件中添加几个属性来实现.查看Freeze窗格的高级Excel功能.如果你想冻结第一个列标题之后的所有内容(基本上在左侧),它将如下所示:

            <staticText>
                <reportElement style="Sans_Bold" mode="Opaque" x="0" y="60" width="104" height="20" forecolor="#FFFFFF" backcolor="#666666">
                    <property name="net.sf.jasperreports.export.xls.auto.filter" value="Start"/>
                    <property name="net.sf.jasperreports.export.xls.column.width" value="110"/>
                    <property name="net.sf.jasperreports.export.xls.freeze.column.edge" value="Left"/>
                </reportElement>
                <box>
                    <leftPen lineWidth="0.5" lineColor="#000000"/>
                    <bottomPen lineWidth="0.5" lineColor="#000000"/>
                </box>
                <textElement verticalAlignment="Middle"/>
                <text><![CDATA[State]]></text>
            </staticText>
Run Code Online (Sandbox Code Playgroud)

或者如果你想冻结标题下方的所有内容,你可以在下面的字段中执行以下操作:

           <staticText>
                <reportElement style="Sans_Bold" mode="Opaque" x="316" y="60" width="199" height="20" forecolor="#FFFFFF" backcolor="#666666">
                    <property name="net.sf.jasperreports.export.xls.freeze.row.edge" value="Bottom"/>
                </reportElement>
                <box>
                    <leftPen lineWidth="0.5" lineColor="#000000"/>
                    <bottomPen lineWidth="0.5" lineColor="#000000"/>
                    <rightPen lineWidth="0.5" lineColor="#000000"/>
                </box>
                <textElement verticalAlignment="Middle"/>
                <text><![CDATA[Street]]></text>
            </staticText>
Run Code Online (Sandbox Code Playgroud)

如果您下载JasperReports zip,其中包含一个演示文件夹,其中包含此工作示例,位于xlsfeatures文件夹中.作为最后一个没有,这个演示在导出到xls时对我起作用,但是在我尝试使用xlsx时却没有(虽然可能有一种方法可以使它工作,但我找不到任何快速的东西).