【问题标题】:Fixed header in Excel using JasperReports使用 JasperReports 修复 Excel 中的标题
【发布时间】:2012-03-07 14:42:13
【问题描述】:

如何使用 JapserReports 创建带有固定标题的 Excel 报表? 我的意思是我需要在滚动 Excel 文件时修复标题。

【问题讨论】:

  • 您会始终知道固定标题的最大列数,还是将相同的模板用于具有自己固定标题的不同报告?
  • 我总是知道最大列数,并且我有两个需要此功能的单独模板。

标签: jasper-reports export-to-excel


【解决方案1】:

目前可以通过在 jrxml 文件中为每个报告添加几个属性来实现。查看 Advanced Excel Features 的冻结窗格。如果您想冻结第一个列标题之后的所有内容(基本上在左侧),它看起来像这样:

            <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>

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

           <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>

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

【讨论】:

    【解决方案2】:

    如果您使用的是 Jaspersoft Studio,这可以通过右键单击元素并选择 XLS 标签

    来实现

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-08-19
      • 1970-01-01
      • 1970-01-01
      • 2015-05-31
      • 2015-10-19
      • 1970-01-01
      • 2014-03-26
      • 1970-01-01
      相关资源
      最近更新 更多