1. 版本编辑
设计器版本 |
---|
10.0 |
2. 描述编辑
在导入 Excel 时,有些用户会有以下问题:
1)如果标题有合并格,在导入 Excel 的时候会出现错乱,需要连续导入两次才能正常。
2)在导入 Excel 数据时,只想导入部分行,或者有几列的内容不想导进去,希望后面自己手动填写。
3)多Sheet中 Excel 导入时,用户希望可以对每张 Sheet 做不同的导入配置。
为了解决这些问题,我们提供了导入Excel 自定义行列的功能,导入界面如下:
注:多 Sheet 的导入是建立在:模板 Sheet 个数和 Excel 一致的基础上的,并不支持模板单 Sheet ,从多 Sheet 的 Excel 勾选一个导入。
3. 适用场景编辑
针对不定行填报表(清单式填报表)适用!
注:新填报预览方法已添加此功能,亦可使用。
4. 使用方法编辑
4.1 Excel 准备
已知 在线导入Excel.xlsx ,内容如下:
点击下载:在线导入Excel.xlsx
4.2 模板样式
新建工作簿,sheet1 样式如下:
添加sheet2,样式同sheet1。如下:
4.3 添加导入按钮
选择模板>模板 Web 属性>填报页面设置,双击添加自定义导入 Excel 行列至工具栏:
保存模板使用填报预览或新填报预览。
4.4 导入 Excel
点击工具栏上的自定义导入 Excel 行列即可:
弹出界面,可以选择需要导入的 Sheet 页,标题行,数据行,数据列:
只要有一个 Sheet 的必填项未填写,则跳出弹窗:
注:当数据超过三十行,左下角显示“共 X 行数据,显示 30 行数据”
4.4.1 配置规则
标题行 0-0:没有标题行
数据行不填:导入除标题行外的所有数据
标题行 1-2;数据行 3-4:第 1,2 行为标题行,不导入;3,4 行为数据行,执行导入
标题行 1-3;数据行 2-4:此为标题行和数据行有交集,取 1-3 为标题行, 4 为数据行,只有第四行执行导入(数据行的起始行必须大于标题行的结束行)
4.4.2 导入逻辑说明
1)存在扩展行的模板(不定行导入)
寻找模板的扩展基准行(默认基准行以上的行都是模板的标题行),根据sheet配置,遍历excel数据的时候跳过配置的标题行,从数据起始行开始导入到数据结束行,行数据遍历逻辑中会跳过配置的不导入的列.
2)没有扩展行的模板(固定行)
此种场景由于严格按照单元格匹配,标题行和数据行的设置没有任何意义,设置只会造成数据错乱,只能标题行设置 0-0,数据行不设置,这样的话也跟原先的导入方式没有区别。
4.5 Sheet 配置
如下所示设置:
注:多 Sheet 的导入是建立在:模板 Sheet 个数和 Excel 一致的基础上的,并不支持模板单 Sheet ,从多 Sheet 的 Excel 勾选一个导入。
分别设置 sheet1 和 sheet2 所需导入的内容:
由于此处的原模板已存在标题行,所以第一行为不需要导入的,从第二行开始导入。
导入效果如下:
已完成的报表,可参见%FR_HOME%\webapps\webroot\WEB-INF\reportlets\demo\form\在线导入Excel.cpt
点击下载模板:在线导入Excel.cpt
5. 局限性编辑
以下场景不支持或者可能使导入出现错位:
1)模板单元格和 Excel 单元格不是对应关系
模板 Sheet 个数和 Excel 中 Sheet 个数不一致
2)表头有填报单元格,主体是不定行,例如:
3)固定行+不定行的搭配,例如:
4)Excel 单元格有斜线,例如:
5)固定行导入:条件限制的很死的,只有不写标题行和数据行的情况下才能导入,不符合自定义导入的定位