集算报表实现报销单金额显示

来源:互联网 发布:csgo网络参数字体 编辑:程序博客网 时间:2024/05/01 02:57

问题描述:

报销单是企业中经常使用的单据,其中金额部分填写必须一一对应,如果报101元钱,那么需要填写的对应是
   
                          百     十     元       角     分
                          1      0      1      0      0  

面对困难:

1、小数部分的数字个数最多是多少?
    理论上来讲可以无限位数(只要有数据库系统及开发工具支持)。但从目前的币种汇率来看,一般情况下会按四位小数位数来考虑的,又如从目前的银行利息率来考虑,一般也是按四位考虑,比如半年内贷款利率为6.57%即0.0657;所以在你的系统中使用的小数位数个数会超过5位甚至10位。

   这种精度一般是为了在计算各种数据时能尽量减少误差,也能减少最终的汇总值的误差,如果这个就按后面讲述原则处理的话,那么汇总值误差会更大了。

2、整数部分位数字个数最多是多少?

   世界首富巴菲特资产620亿美金,合人民币大概四千多亿元,其整数部分会达到12位数字,够多了吧?那你如何按“亿百千”等来显示呢?

   这个串就是你需要预先定义好,你才能往里面“填写”数字的。

解决方法:

最终的可以使用的子报表格式,涉及到三个参数,将有默认值:


1、number,数值型,要处理的数值数据,默认值0。


2、flag,整型,表明是哪一种数字规格化处理:-1:直接舍弃;0:四舍五入(默认值);1:直接进位。


3、decimaldigits,整型,范围为[0,4],超出范围则采取“就近原则”,默认值2。
传入的参数值非数值时,按0处理。


支持的最大数值:就是rmb()函数可支持的最大数值。但rmb()函数只支持小数点后两位数字。

示例如下:


输入参数:


显示结果:


0 0
原创粉丝点击