如何轻松搞定导出功能设计
创始人
2024-05-27 02:26:04
0

原标题:如何轻松搞定导出功能设计

在上一篇文章中,我们分享了excel的导入功能设计。那文件的导出,是不是也有这么多需要注意的点呢?确实是。这篇文章,我们就来详细看看,在做导出功能时,都有哪些需要注意的点。

导出功能也是相当常见,需要关注的点也很常规。

但是,只有小功能,没有小需求。

往细了抠,注意点也是有很多的,我们展开说说。

01 导出前

最重要的一点:是否涉及到敏感数据?

  • 个人信息相关的:身份证号、手机号、住址、姓名等
  • 机构的关键性数据:这就多了,金融类中的交易流水、客户信息等,教育类中的学生信息、医疗类的患者病历、处方信息等等。

比如我之前做医院业务的时候,院方不定期让我们导出很大量处方数据,系统导出时都是挂,所以我们只能数据库导出。

但是「处方数据」完全是敏感数据,涉及到统方。

让我们导敏感数据,一旦数据泄露就会有很大风险,所以每次导出,我们都会让现场实施人员找药剂科、信息科签字,然后我司内部再找领导们签字。最后将数据加密后提供出去。

02 为什么导出?

导出数据的目的是对导出的内容进行二次处理,绝对不是导出完成就结束了。

比如:

1、导出后数据进行数据分析

比如导出excel后后然后进行数据分析,查询功能无法满足需求时,则导出数据,人工进行数据分析。B端数据导出是一个非常常见的功能。

2、导出数据处理后再导入

我之前做医疗数据时,医院需要每月上传数据至国家监管平台。我们系统可以按照监管平台支持的导入格式进行导出,然后医院工作人员再将导出的数据导入到国家监管平台中。

3、导出数据打印

比如导出word单,然后打印出来进行留存或者是线下填写。

4、导出数据后分享数据

比如剪映剪辑完视频后,将视频再发送到抖音。

总之,导出只是其中一个阶段,接着会跨系统进行处理,使用其它的处理软件二次处理数据,涉及到使用其它软件,就需要按照其他软件能够支持的方式进行处理。

最基本的一点就是导出格式。

03 导出格式

导出的格式太多了,docx、xlsx、pptx、pdf、jpg、mp4等等~

文件格式有哪些,导出的格式就有哪些。

我们看下常见的导出格式:

docx、doc、xlsx、xls、csv、pdf

我们需要根据导出文件的应用场景,以及每个格式的特性、使用频率、兼容型等方面,确定导出的格式。

这就涉及到 2 种方式:

1)固定导出格式

导出的格式固定,如导出excel就是导出xlsx格式。这种方式是最常见的,对于后台产品,当涉及到导出报表数据时,直接使用xlsx,问题都不大。

2)用户自定义导出

格式结合能用户满足二次处理的格式,让用户选择自己想要的格式。对于很多工具类产品,为了支持用户多样化的处理方式,导出的格式都是可以选择的。

我之前遇到过一个场景,有些医院的电脑还是xp系统,只有Excel2003。我们系统只能导出xlsx格式,但是Excel2003打不开xlsx格式。

再结合其它原因,最后我们做了个可以选择导出 xls 或 xlsx 格式的功能。

04 导出文件划分

是指把文件划分出层级。比如导出excel,可以同时导出多个文件,每个文件内1个sheet页。也可以导出一个文件、文件中有多个excel。

对于文件层架划分,可以分为2种情况:

1)从需求设计考虑

根据需求方案,确定导出文件的层级。

如导出时需要同时导出2份表格数据,一份是统计结果,一份是统计明细,我们可以导出一份Excel文件,文件内有2个sheet页。

当同时导出多个文件时,可以采用导出压缩包zip的方式。

我曾经遇到个需求:药师在查房时,需要使用纸质的「临床药师查房记录表」。先打印出含有患者信息的记录表,然后再查房时拿笔填写。这就要求我们系统可以导出记录表,由于药师还会存在编辑电子版的需求。

所以我们将导出格式定为docx。

对于导出word的层级,这就涉及到2种情况:

  1. 多个患者信息导出到一个word文件,涉及到跨页时,每个患者通过分页符另起一个新页。
  2. 一个患者导出一个word文件,同时导出多个时,导出压缩包。

最终我们使用的是多个患者导出到同一个word文件中,满足用户批量打印,同时在一个word文件可编辑电子版信息,不用打开很多个。

2)从性能考虑

在导出文件时不可避免的会有很大数据量的情况,会存在导出时间过长,导出文件体积过大的情况。

我们以「导出excel」需求为例,在导出时,研发一定会问最大可以导出多少行?

这个时候产品经理可以评估,导出数据量的会有多少行,确定一个最大行数。

对于行数,我提需求都是最多5000行,但是这个并不是标准,需要结合导出是同步还是异步、服务器性能等角度一起判断 。

但是这个时候存在一个问题:当导出数据超过最大行数时如何处理?

可以只导出前5000行,或者是后5000行。可是这样导出的数据就缺了一部分,保证不了数据完整性。

对于这种情况,我们可以采用2种方式:

1)当超过最大行时,再导出一个文件1-5000行数据是一个文件,5001-10000行是另一个文件,最终导出一个含有多个文件的压缩包。适合导出列数较多的情况,每个文件体积较小。

2)超过行数时,划分sheet页。sheet页1是1-5000行数据,sheet2页是5001-10000行数据,最终导出一个xlsx文件。适合需要通过来回对比的数据,通过切换sheet页即可。

最终选择的方式,大家根据实际需求自己判断就好。

在这个时候,需要确定导出文件的默认名称,我一般是默认名称 + 导出时间。

05 导出权限

在刚开始我就就提到了数据的敏感性,为了保证数据的安全性,不可避免的涉及到数据的权限。

对于数据权限分为:

1)角色功能权限

权限控制到按钮级别,确定哪些用户或角色有权进行数据导出操作。

2)数据范围限制

确保用户只能导出其具有权限的数据。可以通过基于角色或数据所有者的权限进行限制,实现数据范围的过滤,确保用户只能导出其特定范围的数据。比如说店长只能导出自己店铺的数据;区域管理员可以导出所管区域的数据。

3)导出字段限制

限制用户在导出文件中可以看到的字段。

如导出Excel时只能导出权限范围内的列数据,让导出的数据不具备完整性。

比如说销售数据,普通店员可以看到销量,对于店长,可以看到销量、毛利率。

同时,还有对导出频次的限制,导出数据的日期范围限制、导出日志记录等,大家都可以考虑在内,在这不赘述了。

06 导出模板的制定

当导出的内容涉及到固定格式的时候,产品经理有必要明确最终导出内容的格式。

确定具体的格式排版,导出的字段名称、每个字段的取值来源、每个字段显示的格式等等。

提供出一个含有解释说明的导出模板,让研发对着导出模板开发,让测试对着导出模板测试。

对于Excel导出:

1、确定导出的内容有什么:

  1. 文件内是否有报表名称?
  2. 文件内是否要添加导出数据的导出范围、字段解释?
  3. 如果导出的数据用于批量修改再重新导入,是否需要把导入模板中的说明同步在导出模板里也加上。
  4. 确定导出表格的表头,列名是什么?列名如何排列?

2、确定每行数据展示逻辑是什么:

  1. 当查出多行时,是否需要合并上下行?
  2. 数据在excel中的排序是什么?

3、每个字段的展示逻辑是什么:

1)当一个字段中会有多个值时是分单元格展示,还是拼接展示在一个单元格中。

2)如果单元格字段需要拼接,拼接的格式是什么?

3)当数据库中存的是枚举值,需要怎么转换?如「是否删除」,数据库存的是0、1,0代表否,1代表是;那导出的excel中展示为「是、否」还是展示成「已删除、未删除」。

对于Word格式:我采用的方式是确定好导出模板,然后通过「文档内说明 + 批注」的方式,对每个字段进行解释说明。示例如下图:

07 导出的交互方式

在确定导出的功能交互方式前,会直接影响交互方式的就是导出的处理方式:

同步下载 or 异步下载

同步:

导出开始后,用户只能等待导出完成后才能进行其它操作。适合文件较小、导出时间较短的情况。

开发周期短。

异步:

导出开始后,可以去进行其它操作,不会影响在页面中的其它操作。

适合大文件下载、下载过程中需要进行其它操作时,可以选用这种方法。但是开发周期比同步下载开发周期长。

另外,在web浏览器的导出和客户端的导出也会有些不同,一般有以下方式:

1)交互方式1:

同步下载 +web端:

选择数据 → 导出数据→调用浏览器下载 → 页面加载→下载完成

同步下载 + 客户端:

选择数据 →选择存入的系统文件夹→ 客户端下载数据→ 页面加载→下载完成

2)方式2:

异步下载 +web端:

选择数据 → 导出数据→程序后台进行处理数据→ 处理完成后发出通知 → 用户选择下载 → 调用浏览器下载

异步下载+客户端:

选择数据 → 导出数据 →程序后台进行处理数据→ 处理完成后发出通知→ 用户选择下载→选择存入的系统文件夹→下载完成

常规的交互方式一般是这些,当涉及到修改导出文件名称、选择导出字段范围、导出格式的选择时,在流程中添加步骤即可。

总结

我们说了导出文件的一些内容,在实际场景中还是有很多情况要注意,我一直坚定的相信:只有小功能,没有小需求。

在做产品设计时,再小的功能也需要好好思考。

本文由人人都是产品经理作者【王大鹿】,微信公众号:【产品大鹿】,原创/授权 发布于人人都是产品经理,未经许可,禁止转载。

题图来自Unsplash,基于 CC0 协议。

相关内容

重大揭秘家乡大贰脚本,hh...
【无需打开直接搜索微信:3667212】重大揭秘家乡大贰脚本,hh...
2024-09-20 00:12:41
实测揭秘aapoker透明...
您好:雀神麻将小程序这款游戏是可以开挂的,确实是有挂的,通过添加客...
2024-09-19 23:08:25
吃鸡蛋能提高男人性功能吗
吃鸡蛋不能直接提高男人的性功能。鸡蛋是一种营养丰富的食物,其中含有...
2024-09-19 23:01:32
给大家解析智星德州菠萝透明...
你好;新天道炸金花这款游戏是可以开挂的,确实是有挂的,详情添加客服...
2024-09-19 16:27:27
给大家实测wpk透明挂辅助...
自定义wepoke系统规律,只需要输入自己想要的开挂功能,一键便可...
2024-09-19 15:20:46
重大通报wepoker俱乐...
您好:福建天天开心这款游戏是可以开挂,确实是有挂的,通过添加客服微...
2024-09-19 15:18:35

热门资讯

存款利息怎么算?湖南农商行存款... 导读湖南农商行存款利息怎么算?湖南农商行作为湖南最大的股份制银行,它是一家地方性、集约化、国际化、股...
上海发布:紧挨着城区的六个村为... 原标题:上海发布:紧挨着城区的六个村为何一定要保留?来看闵行的城乡融合发展之路 ...
茫崖市有多孤独?方圆百里荒无人... 原标题:茫崖市有多孤独?方圆百里荒无人烟,我国为何要建在戈壁之中? 这是中国最...
使命:林荫不做市公安局局长,为... 原标题:使命:林荫不做市公安局局长,为何副局长牛明也不可能接任 林荫从白山地区...
为何这些户外电源内置双向同步升... 原标题:为何这些户外电源内置双向同步升降压芯片?这篇文章给你答案 前言 目...
杨虎城去世后,他的子女结局如何... 原标题:杨虎城去世后,他的子女结局如何? 1936年12月12日,著名爱国将领...
金三角李国辉,率领三千残部打败... 原标题:金三角李国辉,率领三千残部打败泰国政府军,到台湾后结局如何? 解放战争...
哈以战争为何爆发?美国掌握军权... 原标题:哈以战争为何爆发?美国掌握军权的盎撒集团要收回犹太集团所控制的经济权利 ...
“水中恶霸”田鳖,吃青蛙能捕蛇... 原标题:“水中恶霸”田鳖,吃青蛙能捕蛇,还爱咬人脚趾,为何很少见了? 世界上存...
入伍时间决定军考时间吗?如何进... 原标题:入伍时间决定军考时间吗?如何进行计算? 后台很多战友及兵爸兵妈咨询提到...