找回密码
 立即注册

QQ登录

只需一步,快速开始

WJ123

初级会员

31

主题

86

帖子

295

积分

初级会员

积分
295
WJ123
初级会员   /  发表于:2023-3-1 18:35  /   查看:1565  /  回复:4
工作簿里创建了一个透视表,然后保存的时候单独把透视表这个sheet给toJSON后放到数据库上,下次查询工作簿的时候再fromJSON 这个透视表的sheet,发现此时的透视表就不正常了。对透视表不是很熟悉,想咨询一下,这样做有问题么?

4 个回复

倒序浏览
Ellia.DuanSpreadJS 开发认证
超级版主   /  发表于:2023-3-2 11:58:17
沙发
本帖最后由 Ellia.Duan 于 2023-3-2 11:59 编辑

一般数据透视表有一个单独的sheet存放数据源,如果单独对数据透视表这一个sheet导出,可能造成再次fromJSON时 ,只是普通数值,不是数据透视表。
导入后:

image.png978730468.png
导入前:

image.png915888671.png
回复 使用道具 举报
WJ123
初级会员   /  发表于:2023-3-2 13:58:18
板凳
那目前有什么好的方式实现么?我们想保存用户自己创建的透视表,数据源数据都是保存到数据库的,分离的。
回复 使用道具 举报
Ellia.DuanSpreadJS 开发认证
超级版主   /  发表于:2023-3-2 17:12:50
地板
您好,此问题需要深入调研下解决方案,待有进展会及时通知您。
回复 使用道具 举报
Ellia.DuanSpreadJS 开发认证
超级版主   /  发表于:2023-3-3 10:55:22
6#
本帖最后由 Ellia.Duan 于 2023-3-6 16:40 编辑

这边为您想到一个解决方案:
对数据透视表不进行toJSON序列化,由于您这边数据源数据都是保存到数据库的,下次渲染SpreadJS的时候,加载这部分数据源数据,然后根据数据源去创建数据透视表。
同时,可以通过let pivotinfo=pivot.serialize()保存透视表相关配置。在重新创建透视表后,就能通过pivot.deserialize(pivotinfo),来还原此前的配置了。
这样子就实现了数据透视表的导入问题。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部