历史版本28 :Excel导入时根据标题匹配 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 概述编辑

1.1 应用场景

在 Excel 导入不定行,进行行式报表填报时,默认根据标题匹配。

1.2 功能介绍

导入的 Excel 数据将根据列标题(纵向扩展,横向扩展则是行标题)自动匹配。

注意事项:            

1)标题不相同时,显示为空白,即必须保持标题一致。

2)根据标题匹配与位置无关,列的位置可以互换。

3)在进行不定行导入的时候首先进行标题匹配,标题匹配不成功再 根据位置匹配。

2. 操作步骤编辑

2.1 准备模板

打开模板:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\SpecialSubject|\ExcelImport\导入Excel根据位置匹配.cpt

删除左方和下方的空白行,将产品名称和类别列名称修改为产品和类别 ID,与 Excel 不一样,同时更换类别和供应商列的位置,再为每个单元格添加 控件 ,此处添加文本控件,如下图所示:


注:如果不想添加 控件类型 ,可以设置  不按照控件导入 ,但是这里是导入不定行,不论是否根据控件导入,必须保证左父格是可扩展的。

2.2 修改报表填报属性

修改报表填报属性中列和数据库中列的对应,这里只需要修改类别 ID 对应的值,修改为 map(C2, "ds2", 2, 1)

2.3 修改配置信息

确认 FineDB 中 fine_conf_entity 表的值,默认为 true 。具体如下表所示:

ID
  值含义
 CustomConfig.excelImportAttr.importMatchTitle  true
 根据标题匹配

修改 FineDB 数据库表的方法参见文档:如何使用第三方管理软件连接报表内置 HSQL 数据库 FineDB

2.4 效果预览

保存报表,点击填报预览,单击工具栏上的导入 Excel 按钮,选择 excelimport.xls 。如下图所示:

222

3. 模板下载编辑

已完成模板可参见:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\SpecialSubject\ExcelImport\导入Excel根据标题匹配.cpt

点击下载模板:导入Excel根据标题匹配.cpt

4. 不根据标题匹配编辑

4.1 应用场景

在 Excel 导入不定行,进行行式报表填报时,默认先根据标题匹配,若匹配标题数小于 2,则执行 根据位置匹配 。然而在导入数据时,部分用户希望,无论匹配标题数为多少,数据均根据位置匹配 。

4.2 功能介绍

通过修改配置文件,直接使用位置匹配。

4.3 操作步骤

修改 FineDB 中 fine_conf_entity 表的值,默认为 true,修改为 false。具体如下表所示:

ID
  值含义
 CustomConfig.excelImportAttr.importMatchTitle   true 根据标题匹配
  false 根据位置匹配

修改 FineDB 数据库表的方法参见文档:如何使用第三方管理软件连接报表内置 HSQL 数据库 FineDB

设置完成之后,重启报表服务器,此时再导入 Excel,就会 根据位置匹配 。