FastReport:如何更改数据字段的显示小数位数

问题描述

对于一个客户,我开发了一个基于 T-sql 的客户报告,用于以十进制计算每天的工作小时数(例如 0.5 表示 30 分钟......)。这些结果用于 FastReport(版本 3.2.)。目前只有在计算出的数字有小数位时才会显示小数位。

现在我想将输出更改为始终显示 2 个小数位(例如 2.00、2.50),如果有更多小数位,我想显示 5 个小数位(例如 2.33333)。

对于字段的格式字符串(显示我计算的工作时间)我试过:

%2,2f

适用于第一种情况。对于 5 个地方:

%2,5f

但我不知道根据位数动态更改格式字符串(例如 hours%0.01 == 0 format string = %2,2f else %2,5f)。

我也尝试在 sql Server 2017 级别上解决这个问题:

CASE cdata % 0.01
    WHEN 0 THEN CAST(cdata AS DECIMAL(10,2))
    ELSE CAST(cdata AS DECIMAL(10,5))
END AS GesHour

然后将“GesHour”打印为文本。但这也不起作用。

如果有人能帮助我就好了。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)