最近工作过程中,涉及到两次批量上传文件的设计,也存在一些异常情况等的困惑,参考了一切B端产品进行总结。
本次总结,参考了:钉钉、有赞、草料二维码、企业微信等产品和部分文章进行输出。
1)提供下载模板
在列表页同时出现下载模板和批量上传按钮:
只出现批量上传按钮,在批量上传弹窗提供下载模板:
此处推荐第二种方式。第一种方式在点击批量上传时没有模板,需重新关闭点击下载模板。且下载模板的这一动作仅存在需批量导入时执行,一直置于列表页的话,本身操作就多的列表页又增加了一个按钮。
2)模板最好由产品/交互进行设计,重点要写清填写规则,避免规则不清晰导致用户填写错误
钉钉-批量导入:
企业微信-批量导入:
有赞-批量导入商品:
草料-批量导入:
模板设计要点:
3)对于固定选项的字段,提供选择,而非输入(在模板设计时进行)
1)文件类型、大小
2)部分成功、部分失败
对于部分成功、部分失败的数据而言,有两种方式。一为支持错误信息在平台上直接修改后保存,另一种为提供错误清单,重新上传。
前者开发较繁杂,一旦涉及数据量大时,修改起来比较耗时,且容易再次出错。
设计要点:
3)列名与模板不一致/列的顺序不一致?
钉钉:钉钉是默认第几行是什么字段,与字段名无关。
例如第二行与第三行列名换了,但内容是对的,仍会上传失败。若手机号那一列写的是姓名,则会上传成功。
其它为识别列名,若列名错误,则提示错误。
无论哪一种都可以,但比较推荐识别列名。比较符合认知,及时列的顺序反了,仍能识别正确。
4)顶部填写须知去除后,是否支持上传成功?
5)错误表单怎么设计?
提供每一条错误数据的错误原因。
6)数据重复,选择覆盖/跳过/上传失败?
根据不同场景,进行选择:
例如,本次工作中,导入的数据会传到第三方的平台,数据一直都是不变的,正确即可上传第三方平台。那么就不存在去覆盖旧数据的可能。
虽然在B端产品中处处可见导入导出,但细究起来,仍还有很多点没有涉及到。目前仅是针对工作内容进行的拓展学习,可能还有部分坑没有躺过,可以进行交流。
B端的其中一个价值为提高效率,让导入导出更好用,更人性化、智能,才能提高使用效率。