反馈已提交

网络繁忙

大数据集导出插件

  • 文档创建者:Carly
  • 历史版本:27
  • 最近更新:Carly 于 2024-07-01
  • 1. 概述

    1.1 版本

    报表服务器版本
    插件版本功能变更
    11.0V1.0.0-
    11.0.10V1.1.16

    1)插件名称变更为:大数据集导出插件

    2)支持导出为 CSV 类型文件

    1.2 应用场景

    大批量数据导出的时候,会对服务器、网络传输、数据库造成一定的压力。为了防止这样的风险,FineReport 推出「大数据集导出」的功能,可直接根据数据集结果进行导出。

    1.3 功能描述

    「大数据集导出」是一种占用资源少且速度快的 Excel 导出方式,无需前台数据展示即可进行后台流式导出。

    通过「大数据集导出 Excel」插件,用户可以自定义大数据集导出事件,跳过报表计算直接取数导出。

    实现原理如下:

    1)使用 SXSSFWorkbook 流式行导出,速度快。

    2)使用生产者消费者模式,一个线程用于取数,把数据行存在队列中,另一线程读取行导出。

    注:FineReport 设计器支持使用 JavaScript 代码实现大数据集导出 Excel,详情请参见:JS 实现大数据集导出 Excel 。

    1.4 注意事项

    1)此功能只支持关系型数据库。且 SQL Server 数据库需要把游标设置为服务器游标。

    2)此功能无法直接导出 date/datetime 型空值,需要在 JDBC 数据连接的 URL 后添加 zeroDateTimeBehavior=convertToNull 参数,如果是 Oracle 数据无需加参数。

    3)如果模板有多个参数,且导出时需要设置参数,那么这些参数都要设置,不要只设置其中几个,否则会导致数据无法导出。

    4)建议导出的数据量不超过「1000W 行 * 20 列」,数据量超大可能会导致仅导出部分数据。

    5)导出的 Excel 是通过 SQL 语句直接从数据库中获取的数据,并非报表中的数据,因此报表中设置的数据格式等无法被导出。

    6)此功能不支持移动端。

    7)插件版本在 V1.1.10 及之后时,导出超过 5s 时显示进度条。

    8)支持存储过程,但是必须按下图的方式调用:

    1626076291623008.png

    2. 插件介绍

    2.1 插件安装

    点击下载插件:大数据集导出

    设计器插件安装方法参照:设计器插件管理

    服务器安装插件方法参照:服务器插件管理

    2.2 插件简介

    插件安装后,在控件事件/模板页面事件中新增「大数据集导出」事件类型,如下图所示:

    企业微信截图_16678067428465.png


    具体设置和功能如下表所示:

    设置项
    简介注意事项
    导出文件名
    • 非必填项

    • 可自定义导出的 Excel 文件名称。

    • 不设置则默认为「模板名-数据集名称


    • 文件名支持使用参数,示例:=$参数


    注:这个等于号不是公式,暂不支持参数加文本的写法,也就是想要文件名带参数,文件名就只能是参数。



    • 文件名中含有转义字符/时,浏览器下载文件会转义成_

    • 使用参数定义文件名时,这个参数必须是参数面板绑定好控件的,否则无效

    导出格式
    • 默认为 Excel

    • 勾选 CSV 后,可选择编码方式为 UTF-8 或 GBK

    -
    数据集
    • 必选项

    • 用于选择需要进行导出的数据集

    • 可选范围包括服务器数据集和模板数据集

    -

    参数
    • 非必选项

    • 用于定义传入数据集的参数,不填则传递空值

    • 点击右上角「刷新」按钮,即可抽取出所选数据集中的所有参数和默认值

    • 参数值支持的类型包括:字符串、整型、双精度型、日期、布尔型、公式

    • 参数赋值独立,不会影响到模板中同名参数的设置

    • 参数选择类型为单元格时,需支持获取到单元格扩展后结果

    导出数据列
    • 非必选,用于选择需要导出的数据列,可多选,如果不选默认导出所有字段

    • 添加字段:点击「智能添加字段」,即可抽取出所选数据集中的所有字段。用户可对字段进行重命名或移除部分字段

    • 移除字段:按住 Ctrl 键,可选中多个已添加的字段,点击「移除字段」并确认,即可移除已添加的字段

    • 字段重命名后,导出的Excel中,列名为重命名的结果

    • 重复添加某个字段,可选择是否覆盖原先添加的字段

    • 导出列名中含有转义字符时,设置导出的数据列不生效,会将所有数据列导出

    3. 示例一:大数据集导出固定参数值

    3.1 设置模板

    打开%FR_HOME%\webapps\webroot\WEB-INF\reportlets\GettingStarted.cpt

    编辑参数面板,新增一个「按钮控件」,控件名称和按钮名称修改为「导出」,如下图所示:

    image.png

    3.2 设置控件事件

    选中「导出」按钮控件,点击「控件设置>事件」,新增「点击事件」,设置事件类型为「大数据集导出」,如下图所示:

    企业微信截图_16678067428465.png

    「大数据集导出」事件的具体设置如下图所示:

    • 导出文件名为「导出示例1」

    • 格式为「excel」

    • 数据集为「ds1」

    • 参数地区类型为「字符串」,值为「华东」

    • 导出数据列为「地区、销售员、产品类型」

    3.3 效果预览

    保存模板,点击「分页预览」,点击「导出按钮」,即可导出地区为「华东」的「导出示例1.xlsx」文件,如下图所示:

    image.png

    4. 示例二:大数据集导出动态参数值

    4.1 设置模板

    打开%FR_HOME%\webapps\webroot\WEB-INF\reportlets\GettingStarted.cpt

    编辑参数面板,新增一个「按钮控件」,控件名称和按钮名称修改为「导出」,如下图所示:

    image.png

    4.2 设置控件事件

    选中「导出」按钮控件,点击「控件设置>事件」,新增「点击事件」,设置事件类型为「大数据集导出」,如下图所示:

    「大数据集导出 Excel」事件的具体设置如下图所示:

    • 导出文件名为「导出示例2」

    • 格式为「excel」

    • 数据集为「ds1」

    • 参数地区类型为「公式」,值为「$地区」,此时导出Excel的参数值由另一个参数控件决定。

    • 导出数据列为「地区、销售员、产品类型」


    4.3 效果预览

    保存模板,点击「分页预览」。导出 Excel 的参数值由下拉框控件的参数值决定。

    下拉框控件选择「华北」,即可导出地区为「华北」的「导出示例2.xlsx」文件,如下图所示:

    附件列表


    主题: 报表专题
    已经是第一篇
    已经是最后一篇
    • 有帮助
    • 没帮助
    • 只是浏览
    中文(简体)

    鼠标选中内容,快速反馈问题

    鼠标选中存在疑惑的内容,即可快速反馈问题,我们将会跟进处理。

    不再提示

    10s后关闭



    AI

    联系我们
    在线支持
    获取专业技术支持,快速帮助您解决问题
    工作日9:00-12:00,13:30-17:30在线
    页面反馈
    针对当前网页的建议、问题反馈
    售前咨询
    采购需求/获取报价/预约演示
    或拨打: 400-811-8890 转1
    qr
    热线电话
    咨询/故障救援热线:400-811-8890转2
    总裁办24H投诉:17312781526
    提交页面反馈
    仅适用于当前网页的意见收集,帆软产品问题请在 问答板块提问前往服务平台 获取技术支持