找回密码
 立即注册

QQ登录

只需一步,快速开始

大明禅师

金牌服务用户

3

主题

10

帖子

41

积分

金牌服务用户

积分
41
最新发帖
大明禅师
金牌服务用户   /  发表于:2022-12-14 16:37  /   查看:1657  /  回复:7
2金币
本帖最后由 Clark.Pan 于 2023-1-10 11:06 编辑

Excel文件原始文件大小为350k,绑定工作表,保存生成的ssjson文件很大,有150M。

image.png570379638.png
image.png462037963.png

工艺条件表属性 - New14.json

81.06 KB, 下载次数: 85

需要绑定的数据模板结构

PS-DI003 液位监控条件表.xlsx

349.88 KB, 下载次数: 73

原始excel文件

最佳答案

查看完整内容

原因是Excel原文件中存在两个明显异常的数据验证 这两个数据验证会导致说明这个sheet的行高和列宽变的特别大,导致最终导出内容变得巨量 从ssjson中可以看到说明这个worksheet中存在两个数据验证,这两个数据验证的range设置的特别多,并且包含了很多实际根本用不到的区域。

7 个回复

倒序浏览
最佳答案
最佳答案
Clark.Pan讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2022-12-14 16:37:21
来自 4#
原因是Excel原文件中存在两个明显异常的数据验证

这两个数据验证会导致说明这个sheet的行高和列宽变的特别大,导致最终导出内容变得巨量

从ssjson中可以看到说明这个worksheet中存在两个数据验证,这两个数据验证的range设置的特别多,并且包含了很多实际根本用不到的区域。

image.png556210021.png
image.png369436950.png
回复 使用道具 举报
Clark.Pan讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2022-12-14 17:39:13
2#
您好,看到您这边用了数据绑定的方式,那么导出ssjson时候是否有设置includeBindingSource:true。如果设置了该属性,那么导出的ssjson中会带绑定数据。这时候如果您的数据体量比较大,那么是会造成ssjson体积变大的。
此情况建议您可以用模板和数据分离的方式进行存储,即导出ssjson的时候不设置includeBindingSource:true。这个时候导出ssjson的内容仅仅是模板。本身体积也不会太大。
数据这边可以通过sheet.getDataSource().getSource()直接获取数据源进行保存。
回复 使用道具 举报
大明禅师
金牌服务用户   /  发表于:2022-12-14 20:38:23
3#
Clark.Pan 发表于 2022-12-14 17:39
您好,看到您这边用了数据绑定的方式,那么导出ssjson时候是否有设置includeBindingSource:true。如果设置 ...

我是直接在官网上进行绑定(https://demo.grapecity.com.cn/SpreadJS/WebDesigner/index.html)的,就是Excel和json文件关联上,然后下载成ssjson,数据表里面没有具体数据的。
回复 使用道具 举报
大明禅师
金牌服务用户   /  发表于:2022-12-16 11:41:49
5#
Clark.Pan 发表于 2022-12-15 12:07
原因是Excel原文件中存在两个明显异常的数据验证

这两个数据验证会导致说明这个sheet的行高和列宽变的特 ...

我是利用咱们https://demo.grapecity.com.cn/SpreadJS/WebDesigner/index.html官网制作模板文件,这个网址支持取消验证码把文件导出吗?
回复 使用道具 举报
Clark.Pan讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2022-12-16 15:22:49
6#
本帖最后由 Clark.Pan 于 2022-12-16 15:24 编辑

你这个数据验证是原始Excel文件上就带着的,所以导入就导入进来了。
另外,数据验证UI上没法取消,这一点跟Excel是一致的。
代码删除也是需要一个一个删除的。你这么多一个一个删除也不现实。
建议你这边直接删了"说明"这个sheet重新做吧。

不过我很好奇的一点是,你这个原始Excel文件是如何生成的,手动选择这样几万个好不连贯的区域,然后设置数据验证根本不现实。
如果是用代码去生成的Excel,那就直接去修改源头的代码好了。
回复 使用道具 举报
大明禅师
金牌服务用户   /  发表于:2022-12-16 20:38:52
7#
Clark.Pan 发表于 2022-12-16 15:22
你这个数据验证是原始Excel文件上就带着的,所以导入就导入进来了。
另外,数据验证UI上没法取消,这一点 ...

能否告知我下,为何导入到官网中去,“说明”sheet页行数变成了100w行?我原始excel需要在哪里设置下,使其导入正常?我现在找不到原始文件sheet页问题在哪里
回复 使用道具 举报
Clark.Pan讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2022-12-19 09:51:39
8#
就是因为上述设置了数据验证啊,我截图所示的数据验证区域有100多W行的引用存在,那么导入后当然会显示有100多W行了。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部