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

QQ登录

只需一步,快速开始

量传
金牌服务用户   /  发表于:2025-3-12 17:35  /   查看:70  /  回复:2
本帖最后由 Lynn.Dou 于 2025-3-13 14:04 编辑

产品及版本信息:GC版本:7.2.3 、JS版本:17.1.4

问题详细描述:生成的PDF和在线模版看到的结果不一致;
image.png671138000.png

2 个回复

倒序浏览
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2025-3-12 17:49:33
沙发
您好,
问题收到,需要进一步验证,待有进展贴中同步您。
回复 使用道具 举报
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2025-3-13 15:27:45
板凳

您好,
首先说明一下问题涉及的背景:
SpreadJS(GcExcel同理)有内置公式(比如sum),也允许用户根据业务逻辑自定义公式(如文件中的EFFECTIVENUM公式)。
由于公式是自己定义的,SpreadJS和GcExcel都不会主动识别出它,除非将公式相关代码注册到spread或workbook中。
image.png662134704.png

针对您的问题,有如下两种方案:
1、GcExcel关闭计算引擎
在没有做特殊设置的前提下, SpreadJS导出的json文件包含自定义公式name和已经计算出的公式缓存值,如果此时在GcExcel中关闭公式引擎,那么GcExcel就不会对公式进行计算了,也就不会识别出不认识的自定义公式,进而避免计算出公式值。此时导出的pdf显示的依然是公式缓存值,即表现为SpreadJS公式结果一致。
这种方案适合于GcExcel不需要计算的应用场景,需要您根据自己业务判断是否可取。

2、GcExcel正常计算公式
这应是您目前在用的方案,只是从问题来看出来了二者计算结果不一致的问题。
为了进行验证,需要您分别提供SpreadJS 和 GcExcel注册该自定义函数的相关代码,这样才能做下一步的复现工作。
附件提供了SpreadJS demo模板,您可以在其中进行补充,需要能复现所描述的问题。

GcExcel自定义函数示例:
https://demo.grapecity.com.cn/do ... mos/customfunctions






demo-sjs模板-17.1.4.html

6.69 KB, 下载次数: 1

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