批量上传:别让一键高效工具成为“导入失败”的警报器
一、明确的导入操作指引,减轻用户学习成本
- 提供下载导入模板和导入模板的入口;
- 下载和导入的模板入口在一个页面,避免出现点击“导入”,还要花时间找导入模板的情况。
常规设计如图:
(提供下载和导入的模板)
二、 字段/字符详细说明,将导入失败的风险扼杀在模板设计中
1. 标注出必填和非必填字段
标注方式不限,可以为单元格角标(图二)、字段前加 “ * ” 必填符号(图三)、字体加粗或单元格颜色区别(图四):
2. 明确字符的类型,尽量细化字段的校验颗粒度
导入中常见的字符类型:
文本:对文本长度进行限制。
(若文本长度超出则报错警示)
数字:整数(是否必须为整数)、正负数(是否允许负数)、小数(明确限制小数点后几位),以上均需要进行提示说明。
特殊数字,如银行卡号,确保单元格为文本格式,不会出现科学计数法,否则后台校验无法通过,且用户录入数据会很苦恼。
(提前处理好数字的保存格式)
日期:规范时间格式,常见的有2020-07-24、2020/07/24、2020.07.24,但是用户实际使用的格式可能会超乎你的想象,毕竟很多人是不按规则出牌的。
所以格式有明确限制的,需要在模板中标明:
(示例数据尽量列明模板允许的数据格式)
下拉框:可选范围固定的字段,设计下拉选择,可以避免用户手填错误信息的情况。
下拉选择的值确认是在系统的表结构中已经存在的,杜绝出现导入模板有农业银行,数据库银行表没有农业银行的情况。
也有可能出现用户直接从自己的excel表格复制数据,粘贴到模板中的情况,所以校验字段是否和表对应很重要。
(模板中设计好下拉字段可选范围)
特殊符号:模板中有限制中英文输入法的特殊字符,需要作出明确指示。
后者告知后台开发,对于中英文字符做兼容识别处理。
3. 锁定禁止删除的字段
以本模板为例:为了防止用户误操作,锁定了表头字段数据和第二排的示范数据。
这里需要和后台开发说明,示范数据已锁定,数据的导入校验从第三排开始。
(警示用户列表已锁定)
4. 附带单位
数据有单位的,最好是在字段后标注上,以免用户对数据格式产生疑惑或者自己单独在数字上加单位导致数据校验不合格,无法通过。
(字段标注单位)
模板中可能会存在空格的情况,需要开发对空格进行处理。
避免正确数据因为有空格而校验不通过,导入报错而用户无法定位数据误差的原因发生。
小结:模板内字段的设计与限制,更多的是产品对excel功能的熟悉程度灵活运用,以及如何和项目的实际业务结合起来,协助用户在信息的新增环节避错。
三、报错给予明确提示,提示导入成功的概率和用户体验
- 杜绝英文报错提示用户体验非常糟糕,很容易让用户认为系统崩掉了。
- 尽量明确的进行报错提示,方便用户对错误数据进行处理后再重新导入。
常见的导入失败原因有:
- 字符格式校验不通过;
- 数据重复报错;
- 必填字段缺失;
- 导入模板错误;
- 数据量过大,系统卡死;
四、重复导入如何处理
1. 重复导入的定义
根据业务情况,确认具体哪些字段的重复属于同一条数据,需要判定为重复数据。
一般会根据数据的主键来定义重复数据。
如下图,员工个人信息以姓名和身份证号码合并为主键,构成唯一的员工ID。
如果后台校验到这两个字段一样,就不会再对其他字段进行校验。
(姓名和身份证号形成ID,相同则报数据重复)
2. 是否允许重复导入
1)对于重复的数据,需要根据实际使用情况,确认是否允许导入。
2)不允许重复导入,则需要明确报错提示。
重复导入的数据,处理方式可能有:用户删除重复数据后再次上传,后台报错提示。
(明确指示重复的数据)
直接剔除掉模板中的重复数据,成功导入正常数据,页面无提示;这种方式明显减少了用户需要操作的步骤和内容,体验更友好。
3)允许重复导入,处理方式可能有:
覆盖原有数据,并且标记出变动的字段差异,甚至允许用户直接在页面上对重复字段进行修改后保存再次上传。
这种方式开发成本比较高,且仅适用于导入的数据量较小的情况。
(页面修改重复字段后上传)
直接覆盖原有数据,且页面无标记;这种方式开发成本较低,也不需要用户再做判断,但是相应的可能会有一定的风险,比如用户误修改了个别字段直接覆盖了原有数据,导致其他环节出错。特别是涉及到财务结算的模块,慎用!
五、大数据量异步导入,节省用户时间
如果导入的数据量很大,或者校验的字段需要调用的接口比较多,同步导入会占用很大的内存。
且同步导入用户需要一直盯着页面,无法使用其他窗口;若网络发生故障或者其他原因,导致导入失败,需要再次重新导入,用户体验会很差。
所以对数据量比较大或者接口复杂的数据,可以采取异步导入的方式。
异步导入在条件允许的情况下,可以用进度条展示当前数据的传输百分比,预计完成用时。这样用户离开窗口再次回来查看的时候,明确估算回查上传的数据情况。
以上基本归纳了笔者在项目中踩过的“批量导入”坑,如有遗漏或者错误的地方,请大家指出。
本文作者 @RaRa 。
版权声明
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处。如若内容有涉嫌抄袭侵权/违法违规/事实不符,请点击 举报 进行投诉反馈!