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

问题描述:

报销单是企业中经常使用的单据,其中金额部分填写必须一一对应,如果报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
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值