请选择 进入手机版 | 继续访问电脑版
 找回密码
 立即注册

QQ登录

只需一步,快速开始

jiangyz1
注册会员   /  发表于:2025-3-5 11:08  /   查看:58  /  回复:2
本帖最后由 Matthew.Xue 于 2025-3-5 11:49 编辑

版本号:spjs16.2.5
业务需求:在导入模板台账后,动态添加一个spjs tables,建立数据与列的绑定关系,在台账中填入的数据通过table绑定数据来获取。后续可能调整模板列数据,但已保存的数据及绑定关系要保留(字段名就用自动生成的Column1、Column2,与当前列数据对应)。相当于将台账数据半结构化存储。

问题:
如demo,只能依次在第7、8、9行填写内容才能计入表格,若出现跳行,数据在data中就获取不了。 若执行table.showHeader(false)隐藏表头,table的区域消失,在表格内填入的所有数据都不计入绑定的data中。


能否在添加table后,将后续所有行都识别为table的区域? (setDataSource会改变table的range,但确实初始数据为空)

demo.zip

5.42 MB, 下载次数: 1

2 个回复

倒序浏览
jiangyz1
注册会员   /  发表于:2025-3-5 11:48:25
沙发
已通过 sheet.tables.resize处理解决,麻烦版主帮忙结下帖。
赞一下新出的AI搜索!
回复 使用道具 举报
Matthew.Xue
超级版主   /  发表于:2025-3-5 11:55:26
板凳
本帖最后由 Matthew.Xue 于 2025-3-5 11:56 编辑

您好,这边正在回复,您就自己搞定了~
是这样的,数据绑定和表格的行数一定是对应的,所以您如果将后续的所有行都识别为表格区域,就意味着有很多的空数据,您通过resize方法改变了table的范围后,通过getDataSource,可以看到数据源也出现了很多空的数据:
image.png644067687.png
所以您可以通过在构建dataSource的时候,就使用这种空数据将sheet填满,也是一种可行的方式。

那这边就先结贴啦

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部