Rss & SiteMap

Foxtable(狐表) http://www.foxtable.com

新一代数据库软件,完美融合Access、Foxpro、Excel、vb.net之优势,人人都能掌握的快速软件开发工具!
共8 条记录, 每页显示 10 条, 页签: [1]
[浏览完整版]

标题:四舍五入

1楼
lihe60 发表于:2009/12/29 10:00:00

Convert([数量] * [单价] * (1 - [折扣]) * 100, 'System.Int64') / 100
不能用,贺老师能增加一个四舍五入的函数吗?如
函数名([金额],3),对金额小数点后三位四舍五入。

2楼
lihe60 发表于:2009/12/29 10:01:00
四舍五入,很重要。
3楼
狐狸爸爸 发表于:2009/12/29 10:05:00
当然能用的。
4楼
i52117 发表于:2009/12/29 10:13:00

如何实现四舍五入

表达式并没有提供传统的四舍五入函数Round,我们只能用Convert函数来间接实现。

例如金额列原来的计算公式为:

[数量] * [单价] * (1 - [折扣])

为了保留两位小数,可以将公式改为:

Convert([数量] * [单价] * (1 - [折扣]) * 100, 'System.Int64') / 100

原理很简单:将计算结果乘以100,然后取整,最后除以100。

如果你要保留三位小数,将表达式中的100改为1000即可,其余类推。

5楼
lihe60 发表于:2009/12/29 10:17:00
Convert([数量] * [单价] * (1 - [折扣]) * 100, 'System.Int64') / 100
这个代码写不到datacolchanged事件中去的。
6楼
狐狸爸爸 发表于:2009/12/29 10:21:00

代码是代码,表达式是表达式,各有自己的语法和函数,岂能混用?

代码用round函数

7楼
lihe60 发表于:2009/12/29 10:43:00
round用起来比较复杂,能不能简单点,如round(val,2)这样的格式。
8楼
狐狸爸爸 发表于:2009/12/29 10:53:00
round复杂?
这样的代码还复杂:

Math.Round(4.567,2)

图片点击可在新窗口打开查看
[此贴子已经被作者于2009-12-29 10:53:36编辑过]
共8 条记录, 每页显示 10 条, 页签: [1]

Copyright © 2000 - 2018 foxtable.com Tel: 4000-810-820 粤ICP备11091905号

Powered By Dvbbs Version 8.3.0
Processed in .05469 s, 2 queries.