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

QQ登录

只需一步,快速开始

guoqp

银牌会员

311

主题

1165

帖子

2874

积分

银牌会员

积分
2874

时代开发者征文活动

guoqp
银牌会员   /  发表于:2022-10-21 17:12  /   查看:1788  /  回复:6
10金币
先看看存储过程返回值长啥样


再看看活字格把它显示成了啥样


我并不需要它给我四舍五入取整啊,而且我还设了小数位数


请问怎么破?

附件: 您需要 登录 才可以下载或查看,没有帐号?立即注册

6 个回复

Grayson.Shang活字格认证 Wyn认证
超级版主   /  发表于:2022-10-21 17:50:13
沙发
大佬您好,我这边测试SQLserver中的decimal的数据类型不会被四舍五入,
这是我在数据库工具中存储的数据



这是活字格在页面上展示的数据


或者我哪个步骤复现的有问题,你可以说一下复现步骤,或者上传一个demo,连接一个可以远程连接的数据库,我们测试一下。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
Joe.xu讲师达人认证 悬赏达人认证 活字格认证
超级版主   /  发表于:2022-10-21 17:50:59
板凳
您好,这个我们之前调查过,
可以稍微绕一下,把计算结果转换为nvarchar类型返回
存储过程返回值类型问题
https://gcdn.grapecity.com.cn/fo ... 1&fromuid=60953
(出处: 葡萄城产品技术社区)
回复 使用道具 举报
guoqp
银牌会员   /  发表于:2022-10-21 21:43:42
地板
本帖最后由 guoqp 于 2022-10-21 22:19 编辑
Joe.xu 发表于 2022-10-21 17:50
您好,这个我们之前调查过,
可以稍微绕一下,把计算结果转换为nvarchar类型返回
存储过程返回值类型问题 ...

经过反复测试,我找到了这样一些规律看是否有用
decimal是肯定不行的,float可以保留1位小数,nvarchar可以完整保留,单元格使用常规,如果用数值需要设置好小数位数。

如果是在服务端命令中使用存储过程,一定要去重新保存一下服务端命令,最好把存储过程的命令删了重建,如果没有重新保存服务端命令,不管怎么改结果都是一样

改为nvarchar后客户端存储过程基本没问题,主要问题还是在服务端命令上,看看你们能不能复现
回复 使用道具 举报
Erik.Xue讲师达人认证 悬赏达人认证 活字格认证 Wyn认证
超级版主   /  发表于:2022-10-24 11:37:25
5#
您哈哦,这边测试后没有复现所说的截断问题,外联库的数据类型建议参考下帖进行设置最为保险:

看完必恍然大悟的活字格内幕:二十三,不同数据库中字段类型的对应关系
https://gcdn.grapecity.com.cn/fo ... 2&fromuid=58155
(出处: 葡萄城产品技术社区)
回复 使用道具 举报
guoqp
银牌会员   /  发表于:2022-10-24 12:40:55
6#
Erik.Xue 发表于 2022-10-24 11:37
您哈哦,这边测试后没有复现所说的截断问题,外联库的数据类型建议参考下帖进行设置最为保险:

看完必 ...

我复现出来了的,新建一个工程,在页面中使用客户端存储过程没有问题,但改为使用服务端存储过程就出现了
nvarchar()没有问题,float只保留了一位小数,其它位被四舍五入了,decimal是肯定要出问题的
回复 使用道具 举报
Erik.Xue讲师达人认证 悬赏达人认证 活字格认证 Wyn认证
超级版主   /  发表于:2022-10-24 16:23:16
7#
guoqp 发表于 2022-10-24 12:40
我复现出来了的,新建一个工程,在页面中使用客户端存储过程没有问题,但改为使用服务端存储过程就出现了 ...

大佬,能否提供一个复现此问题的工程文件?这边测试确认下。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部