历史版本5 :Excel标记导入 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:
产品版本最低JAR包要求插件版本
FR10.02021-01-25V1.3


目录:

1.概述编辑

1.1 应用场景

原有的Excel导入功能虽然不需要做什么设置,但其支持的场景也相对有限。在遇到一些复杂场景的时候,经常会出现导入空白,数据错位、缺失的问题。

如果遇到原有Excel导入功能无法支持当前模板的格式,想要对每个模板设置不同的导入逻辑,有自定义选择某个sheet导入的需求,希望对每个sheet使用不同导入方式等场景,则可以使用此插件。

1.2 功能说明

Excel标记导入整合了所有原有的Excel导入逻辑和导入方式,其支持的格式更多。同时,标记导入也多了一些新的功能和设置。具体功能清单如下:

  • 支持清空、覆盖、增量三种导入方式

  • 支持纵向、横向两种导入方向

  • 支持对导入值进行显示值和实际值的转换

  • 支持按照位置导入数据区域以外的内容

  • 支持自由选择Excel的某个sheet导入

  • 支持导入时记住本次导入配置

1.3 功能限制

1.3.1 不支持的格式

标记导入支持了大部分的格式,所以仅将不支持的格式列在下方。


场景图示
1存在斜线的单元格无法识别
2多数据区域无法导入

1.3.2 不支持的场景

  • 不支持新填报预览

  • 不支持移动端

  • 不支持断开的导入区域

1.4 模板设计规范(重要)

标记导入需要遵循的模板设计规范如下:

  • 数据区域存在数据字段时,需要设置成列表展示。当前导入只支持列表。

  • 数据区域的单元格,需设置成可扩展。

  • 尽可能使用Microsoft Excel 2007及以上版本,对于WPS Excel和Microsoft Excel低版本不保证兼容。


2.插件介绍编辑

2.1 插件安装

点击下载插件:标记导入插件

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

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

2.2 设置说明

2.2.1 模板设置

设置入口为「模板>Excel导入标记」。

设置名称说明
表名显示当前设置的sheet页,每个sheet页需要单独设置导入标记
标题区域用于标记模板中的标题区域,例如A1:D1,不支持断开的区域
内容区域用于标记模板中的内容区域,例如A2:D2,不支持断开的区域
导入方向

分为纵向和横向。其适用场景如下图所示:

纵向(预览时标题为横向,而数据需要纵向导入)

横向(预览时标题为纵向,而数据需要横向导入)

大部分导入Excel场景都适用「纵向」

形态设置勾选后,会按照单元格数据字典设置,在提交时将导入值转换为实际值入库。具体效果可参考:Excel导入显示值转换
导入区域外部分勾选后,会将Excel中数据区域以外的内容进行导入,且这部分在导入时执行的是按位置匹配

2.2.2 工具栏设置

设置入口为「模板>模板web属性>填报页面设置」。

2.2.3 预览设置

设置入口为填报预览时点击工具栏的「标记导入」。

设置名称
说明
sheet名称
会自动读取Excel中的所有sheet以供选择,在导入时会将勾选的sheet按设置进行导入
标题区域用于标记Excel中的标题区域,例如A1:D1,不支持断开的区域
内容区域用于标记Excel中的内容区域,例如A2:D2,不支持断开的区域
导入位置标记需要导入到模板中的哪个sheet
导入方式设置导入方式,共有三种:清空、覆盖、增量
保存设置类似于暂存,会根据用户名和模板名称,记住本次的导入设置。勾选后在下次导入时,会保留除了内容区域以外的设置。去除勾选后,则会清空所有导入设置。


3.示例编辑

3.1 模板准备

设计模板和Excel如下:

模板

Excel

3.2 设置模板导入标记

打开「模板>Excel导入标记」,按下图所示设置:

3.3 添加标记导入按钮

打开「模板>模板web属性>填报页面设置」,选择「为该模板单独设置」,双击「标记导入」添加到工具栏。

3.4 预览模板设置

选择填报预览,点击工具栏的「标记导入」按钮选择需要导入的Excel,之后按下图所示设置导入标记:

3.5 效果预览


4.文件下载编辑

点击下载模板:标记导入demo.cpt

点击下载Excel:标记导入demo.xlsx


5.注意事项编辑

5.1 单元格初始加载后才支持导入数据

单元格需要初始加载后,才可以导入对应数据。如果遇到标记导入设置无误,但单元格无法导入数据的现象,可以排查下是否是因为该单元格没做任何设置,从而没有初始加载造成的。例如下图所示,如果在勾选了「区域外内容导入」且位置对应无误的情况下,C2和H10依然无法导入数据,可以尝试在制作模板时给C2和H10任意填入内容后再删除来解决。

5.2 和原有Excel导入功能的对比

5.2.1 格式支持度


格式
原Excel导入标记导入
1

单行表头,表头部分无横向扩展

支持支持
2

单行表头,表头部分存在一个横向扩展

支持支持
3

自由报表,不存在扩展单元格

支持支持
4

导入数据区域以外部分

不支持支持
5

多层表头

不支持支持
6

表头部分多个横向扩展


不支持支持
7

导入区域有多行扩展行

不支持支持
8导入区域由多个数据集组成

不支持支持

5.2.2 功能对比


功能原Excel导入标记导入
1导入方式不同导入方式需要使用不同的按钮可以在一个按钮中同时实现清空、覆盖、增量导入设置
2多sheet不支持自由选择Excel中的某个sheet导入支持自由选择Excel中的某个sheet导入,支持将多个sheet导入到一个页面中
3导入方向不支持横向导入支持横向导入
4导入时的设置可以直接导入,无需额外设置需要在导入时设置标题和内容区域,支持记住当前配置

5.3 JS接口

FR.MarkExcelImport.markImportExcel()

5.4 导入配置存储位置

在导入时勾选保存设置后,会将相关信息存储到finedb中,具体位置如下图所示:

fine_excel_mark_conf 表

fine_excel_mark_sheet_conf 表