历史版本54 :上传下载文件插件 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 概述编辑

1.1 版本

设计器版本  JAR 包
插件版本  
10.02019-06-11V7.1.1
9.02019-06-11V6.0.8
8.02019-06-11V6.0.8

1.2 应用场景

有时候用户需要将文件上传到服务器保存,并且可以提供文件下载。以前 FineReport 实现此功能需要自定义函数实现,但代码实现会比较麻烦。该插件将此功能封装,安装后可以通过可视化界面操作,方便快捷。

注:此插件暂不支持决策报表。

1.3 功能介绍

  • 报表填报属性界面,自定义提交中新增上传类型选择,可选择上传至服务器上传至FTP

  • 超级链接新增一个选项文件下载

2. 插件介绍编辑

2.1 插件安装

插件下载请点击:上传下载文件插件

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

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

2.2 插件功能

1)上传至服务器

报表填报属性界面,自定义提交中新增了上传类型选择,可选择上传至服务器,此方式适用于单机工程,如下图所示:

image.png

注1:参数面板中、CPT 单元格控件中的控件事件都同步加了上传至服务器功能。

注2:同名文件覆盖,默认不勾选,不勾选时,同名文件重命名,勾选后实现同名文件直接覆盖。

2)上传至 FTP

报表填报属性界面,自定义提交中新增上传类型选择,可选择上传至 FTP,此方式适用于单机和集群工程,如下图所示:

image.png

注1:参数面板中、CPT 单元格控件中的控件事件都同步加了上传至服务器功能。

注2:同名文件覆盖,默认不勾选,不勾选时,同名文件重命名,勾选后实现同名文件直接覆盖。

3)文件下载

超级链接新增一个选项文件下载,可以通过设置超级链接,实现从服务器端下载文件,如下图所示:

image.png

image.png

2.3 注意事项

1)上传路径全红为正确,路径用双引号括起,举例:"C:/Users/WCT/Desktop/"

2)上传页面点击上传后需要点击提交按钮。

3)在填报属性界面可定义文件上传后的名称。

4)文件上传和下载为不同单元格。

5)移动端只支持上传,不支持下载。

6)请勿一次上传多个文件,文件名会默认叠加修改,如下图所示:

image.png

3. 示例编辑

下面通过制作一张报表,演示一下如何使用该插件的功能。

3.1 报表设计

选中 A1 单元格,如下图给 A1 单元格添加文件控件

Snag_4c6ac74.png

3.2 上传文件到服务器

1)菜单栏点击模板>报表填报属性,添加自定义提交,提交类型选择上传至服务器
磁盘路径:填写服务器磁盘路径,例如插入公式"C:/Users/Leo.Tsai/Desktop/Document/"

文件:填写文件的填报单元格,插入公式A1

文件名:填写文件名,插入公式LEFT(FILENAME(A1), FIND(".", FILENAME(A1)) - 1) 

注:公式LEFT(FILENAME(A1), FIND(".", FILENAME(A1)) - 1),表示 find 函数找到后进行定位,再使用 left 函数提取前面的位数,防止出现多后缀名。

1.png

注:这里文件名可以直接输入内容,或者使用单元格内容或者函数。

3)保存报表,点击填报预览,并上传文件,文件上传成功,保存至设置好的路径下且文件名为 A1 单元格的文件名。

Snag_4c4e476.png

注:请勿一次上传多个文件,否则文件名会叠加,造成使用困扰。

3.3 上传文件到FTP

1)菜单栏点击模板>报表填报属性,添加自定义提交,提交类型选择上传至FTP,点击 FTP 设置,添加一个 FTP 连接。

Snag_554fdce.png

2)如下图新建一个 FTP 连接,用户需根据实际场景填写连接信息。

Snag_559f45f.png

3)设置文件信息。

上传路径:填写FTP上传路径,例如插入公式"/FineReport Document"

文件:文件填报的单元格,插入公式A1

文件名:填写文件名,插入公式LEFT(FILENAME(A1), FIND(".", FILENAME(A1)) - 1)

FTP站点:选择连接好的 FTP 站点,例如Test

Snag_55c0e56.png

4)保存报表,点击填报预览,并上传文件,文件上传成功,FTP 站点下会保存该文件,且文件名为 A1 单元格的文件名。
Snag_546d9cf.png

注:请勿一次上传多个文件!文件名会叠加,造成使用困扰。

3.4 下载功能

以4.2中已经设计好的上传到服务器报表为例( FTP同理设置即可 )。

1)A2 单元格插入公式filename(A1),表示获取 A1 单元格上传的文件名,A2 单元格如下图设置形态属性,设置自定义类型的数据字典

实际值=$$$

显示值=LEFT(FILENAME(A1), FIND(".", FILENAME(A1)) - 1)

Snag_65844ce.png

2)设计器菜单栏点击模板>报表填报属性,如下图新增内置SQL提交,将 A2 单元格的文件名保存到数据库中,为后期数据的下载做准备(数据库中有一张表,里面 filename 字段用来存储上传的文件的文件名)。

Snag_65d5b0d.png

3)选中 A2 单元格,右边属性面板新增一个文件下载类型的超级链接,文件下载的具体设置如下图步骤5所示:

文件服务:只有一个选项Default,同时支持从服务器和 FTP 下载,如果是 FTP,需要在右边设置FTP设置连接一个 FTP。

文件路径:要下载的文件的路径,如:插入公式"C:/Users/Leo.Tsai/Desktop/Document/Test.xlsx"

重命名:可以对下载到本地的文件进行重命名,这个是选填项,非必须。

编码类型:匹配自己环境下 FTP 的编码。

Snag_663251b.png

4)保存报表,点击填报预览,点击下载超链,即可下载文件,如下图所示:

39FCB2ED-9599-4D14-A4A1-74840E36CC2A.GIF

4. 模板下载编辑

已完成模板可参见:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\form\上传下载文件.cpt

点击下载模板:上传下载文件.cp