历史版本11 :Excel自定义导入 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 概述编辑

1.1 问题描述

在导入 Excel 时,有时可能会遇到下面这些问题:

  • 如果标题有合并格,在导入 Excel 的时候会出现错乱,需要连续导入两次才能正常。

  • 在导入 Excel 数据时,只想导入部分行,或者有几列的内容不想导进去,希望后面自己手动填写。

  • 多 Sheet 报表中导入 Excel 时,用户希望可以在前端对每张 Sheet 分别进行导入。

FineReport 提供了「自定义导入Excel行列」的功能,使用该功能可以很好地解决上述问题。

1.2 功能入口

在填报页面设置页面将「自定义导入Excel行列」按钮添加到填报工具栏

1622018246579402.png

前端填报预览时,使用这个按钮导入 Excel 即可:
Snag_38e3eb09.png

1.3 功能界面

前端点击「自定义导入Excel行列」按钮后,选择一个 Excel 文件,就会弹出如下图配置页面,下面介绍下每个配置项的作用:

  • 当前sheet:下拉选择 Excel 不同 sheet,设置各个 sheet 需要导入的内容。

  • 编辑导入sheet:选择导入 Excel 中哪几个 sheet,未勾选的 sheet 不会显示在左边当前 sheet 下拉框中。

  • 标题行:设置 Excel 中标题行是哪几行,标题行不会被导入,该选项为必填项,如果 Excel 无标题则都填 0。

  • 数据行:不填,默认导入除标题行外的所有数据;只填起始行,则导入该行及其后所有数据;只填结束行,则导入该行及其之前的数据。

  • 数据列:勾选的列导入,不勾选列的不导入。

1622018667355017.png

1.4 重点关注

  • 该功能适用于 行式填报报表

  • 该功能同时支持填报预览和新填报预览。

  • 多 Sheet 导入是建立在模板 Sheet 个数和 Excel 一致的基础上,并不支持模板单 Sheet ,而从多 Sheet 的 Excel 中勾选一个导入。

2. 示例编辑

2.1 准备Excel

准备一个有 2 个 sheet 的 Excel 文件:在线导入Excel.xlsx

Excel 中每个 sheet 的数据如下:

  • sheet1

1.png

  • sheet2

2.png

2.2 准备模板

1)首先设计 sheet1 填报,表格如下图所示:

1.png

2)给 sheet1 填报设置下填报属性,如下图所示:

1622020545786882.png

3)设计 sheet2 填报,表格如下图所示:

Snag_3906f1c5.png

4)给 sheet2 填报设置下填报属性,如下图所示:

1622020730312744.png

2.3 导入预览

保存报表,选择填报预览,点击工具栏「自定义导入Excel行列」按钮,选择准备好的 Excel 文件。

配置 sheet1 的导入内容:

1622021415845211.png

配置 sheet2 的导入内容:

1622021473948922.png

最终导入效果如下动图所示:

1622021498420291.gif

3. 模板下载编辑

已完成模板可参见:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\demo\form\在线导入Excel.cpt

点击下载模板:在线导入Excel.cpt