动态控制水晶报表中数字栏位的值显示的小数位数

代码写在设置格式部分的【数字】--->【自定义样式】--->【十位】的公式栏位中,另外【十位】中的格式选定所需的最长格式,并且,【四舍五入】中选定最大的小数位数。

注意:水晶报表最多保留10位小数,系统默认格式保留2位小数。

方法一:

if Right(ToText((数字栏位),总小数位数), 4)='0000' then 0
else if Right(ToText((数字栏位), 总小数位数),3)='000' then 1  
else if Right(ToText((数字栏位), 总小数位数),2)='00' then 2  
else if Right(ToText((数字栏位), 总小数位数),1)='0' then 3  
else 4
注意:该处需将【起始0】选项勾上,否则当数值大于0小于1时,显示的数值将会默认去掉个位上的0。

方法二:

Local StringVar strTemp := ToText({数字栏位},总小数位数);
Local NumberVar i;
Local StringVar str := "";
Local NumberVar strLen := Length (strTemp);
For i := strLen To 1 Step -1 Do
(
   If strTemp[i] = "." Then
   (  //如果当前值是小数点,则终止循环
      str := Left(strTemp, i-1);
      Exit For
   )
   Else If strTemp[i]  <> "0" then
   (//从字符串最后一位取值,取小数点后最后一个不为0的值
      str := Left(strTemp, i);
      Exit For
   )
);

//设置起始0

If str[1] = "." Then
(
str := "0"+str;
);
Str

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值