反馈已提交

网络繁忙

当前为10.0版本文档,只有最新版本的文档支持在线编辑修改,如果想创建/编辑文档,请移步至 最新版帮助文档

二进制文件显示成可下载的链接

  • 文档创建者:lu123
  • 历史版本:12
  • 最近更新:Catqiu 于 2022-09-14
  • 1. 概述

    1.1 版本说明

    报表服务器版本JAR 包版本HTML5 移动端展现插件版本App 版本
    功能变动
    10.0.132021-01-2510.4.97610.4.976

    移动端支持显示可供下载的链接,且可以直接点击下载文件

    PC 端所有预览方式都支持显示可供下载的链接

    1.2 应用场景

    FineReport 上传文件是以二进制编码形式保存到数据库表中的。

    将存文件字段拖到单元格后,前端预览时显示的是二进制编码,如下图所示:

    222

    那么如何让图片和二进制文件在预览时,可以统一显示时成可供下载的链接呢?效果如下图所示:

    222

    1.3 实现思路

    选中文件字段所在单元格,单元格属性的「其他」设置项下。

    将「显示内容」设置为「用下载链接显示二进制内容」,如下图所示:

    注:若数据库中存储的文件名不包含文件格式后缀,需要在文件名后面公式拼接后缀,否则下载的文件无法打开。如果是通过文件控件填报到数据库,填报的文件名应包含后缀。若不包含后缀下载的文件无法打开。

    Snag_1a05850f.png

    2. 示例

    2.1 数据准备

    示例并没有使用内置的数据库 FRDemo,因为该数据库不支持二进制编码。

    此处使用 MySQL 进行演示,新建普通报表,新建数据集,查询出表 file 中的内容添加到数据集,如下图所示:

    Snag_1a1a966e.png

    表 file 中有 2 个字段,文件名字段是字符串类型,存放文件的名称;文件字段是 blob 类型,存放的文件的二进制编码,如下图所示:

    注1:因为是 SQLite 数据库,存放文件的字段一定要设置成 blob 类型的。

    注2:MySQL 和 Oracle 需要将字段设置为 blob 类型,SQL Server 数据库需要设置为 image 类型。

    Snag_1a1e048b.png

    2.2 设计表格

    如下图设计表格,将 2 个字段分别拖入到 A2、B2 单元格中。

    1611026199907036.png

    2.3 设置显示内容

    选中 B2 单元格,将单元格属性「其他」下的显示内容设置为「用下载链接显示二进制内容」,下载文件名填入「=A2」,如下图所示:

    注:设置「下载文件名」是为了下载后让文件可以显示出想要的名字,如果不设置,那么下载后就是一个名为 download.zip 的压缩包。

    1611026405155958.png

    2.4 效果预览

    2.4.1 PC 端

    保存报表,选择任意一种预览方式,效果如下图所示,可以直接点击链接下载文件。

    Snag_1a298de9.png

    2.4.2 移动端

    同时支持 App 端和 H5 端预览,移动端显示和下载的效果如下图所示:

    1611027021473986.gif

    附件列表


    主题: 报表应用
    已经是第一篇
    已经是最后一篇
    • 有帮助
    • 没帮助
    • 只是浏览

    售前咨询电话

    400-811-8890转1

    在线技术支持

    请前往「服务平台」,选择「在线支持」

    热线电话:400-811-8890转2

    总裁办24H投诉

    热线电话:173-1278-1526