起步软件技术论坛-X3

 找回密码
 立即注册
搜索
查看: 139|回复: 4

【搞定】BUG:你们的表达式计算字段中如果有两个ROUND则报错**

[复制链接]
发表于 2007-6-4 14:58:33 | 显示全部楼层 |阅读模式
我在数据集中加了个表达式计算字段HXKK=ROUND(GRJN,0)-ROUND(GZKK,0)  ,把数据集绑到网格,在打开数据集时报错:
函数Round的参数必须是数值

改用 ROUND(GRJN-GZKK,0)  则不会报错。
回复

使用道具 举报

发表于 2007-6-5 10:47:28 | 显示全部楼层
不是因为有两个ROUND函数的问题,而是 GRJN GZKK 这两个字段其中有一个不是数字或者整数吧。
因为ROUND(GRJN-GZKK,0),把字符行转换为数字了,而ROUND(GZKK,0)没有,如果要这样做,那么自己可以强制类型转换,例如 round(sz,0)-round(cast(GZKKas number),0)
回复 支持 反对

使用道具 举报

发表于 2007-6-7 09:57:54 | 显示全部楼层
??
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-6-7 10:22:00 | 显示全部楼层
HXKK:还需扣款  GRJN:个人缴纳  GZKK:工资扣款;
GRJN 是物理字段(number(10,2))  ;
GZKK是我直接从工资表中SUM出来的;SQL语句如下
SELECT 五金表.工号,五金表.GRJN,(SELECT SUM(GZKK) FROM 工资表 WHERE 工资表.工号=五金表.工号) AS GZKK FROM 五金表

也许是由于 ROUND(SUM字段,0) 不支持 吧
回复 支持 反对

使用道具 举报

发表于 2007-6-8 14:42:28 | 显示全部楼层
o ,因为sum字段后,这个类型变成字符型了,你用cast 去转换一下就可以了,
这个帖子我结贴了,有问题,请重新开贴吧
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-1-11 12:53 , Processed in 0.037901 second(s), 15 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表