为什么报表总是有误差?

coala 2001-04-25 11:20:00
我用QUICKREPORT做的报表,不知道怎么了?有的数据统计的时候没有误差有的却没有,还请各位高手指导?谢谢
...全文
161 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
tangrh 2001-04-26
  • 打赏
  • 举报
回复
to coala:
你可以格式化数据再求和的办法,我举个例子说明为什么有误差,我曾遇到10000张以上发票金额求和(数据库MS SQL SERVER7),结果误差1毛多,为什么,通过研究发现,money字段
显示给客户端时是两位小数,但存储在数据库中的是4位小数,如12.45可能会以12.4532存储在数据库中,float字段也不会例外,每一张误差一点,你用sum函数求和时就会越来越大,解决办法是利用如下语句 select sum(convert(numeric(18,2),moneyfield)) from yourtable,把3、4位小数截掉再求和,就没有误差了
fireworld 2001-04-25
  • 打赏
  • 举报
回复
是的,delphi在这方面比较麻烦,预览时的效果和实际的有时不一样,这可能和显示器的分辨率还有你的IDE环境的分辨率的设置有关
xhjdm 2001-04-25
  • 打赏
  • 举报
回复
大概是和你的数据库字段定义的数据类型有关,你把问题再说的具体一点。
kingsong 2001-04-25
  • 打赏
  • 举报
回复
say详细点
czzw 2001-04-25
  • 打赏
  • 举报
回复
恐怕是你使用了浮点数吧。
你的误差不会太大,可能就是0.01之类的,系统取整的问题

5,388

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧