s-s-rS 字段中的四舍五入

Posted

技术标签:

【中文标题】s-s-rS 字段中的四舍五入【英文标题】:Rounding Off in s-s-rS field 【发布时间】:2021-08-19 05:45:41 【问题描述】:

在我的 s-s-rS 专栏之一中,我的表达式为

=ROUND(Fields!Contribution_Margin_.Value,5) & "%"

如您所见,我在四舍五入到小数点后对百分比符号进行了硬编码。但问题是用户希望在 s-s-rS 报告中只看到 2 个小数,当他将其导出到 excel 时,他希望在单击该特定单元格时获得 5 个小数。

所以我进入了文本框属性,在数字部分,我四舍五入到 2 但它没有发生,因为我最后有“%”符号,所以在这之后它也给了我直到 5报告中的小数。

任何解决方案如何使其在 s-s-rS 中保留 2 位小数。

【问题讨论】:

将文本框格式更改为#.00%0.00%,并让用户导出为csv然后在excel中打开。 @MichaelVine 它不工作它仍然给我价值直到小数点后 5 位。我认为这是硬编码最后的百分比符号的原因 删除表达式并仅使用该字段。您在表达式中四舍五入到 5 位小数,它正在覆盖格式。我也在谈论格式文本属性而不是数字格式属性。 【参考方案1】:

不要混合 value 和 display - 保留 value 原样(而不是将 Value 属性转换为硬编码格式的字符串,从而丢失精度和类型)并使用 display 属性在所需的精度。

将单元格值设为字段值:Fields!Contribution_Margin_.Value。这允许它以数字而不是文本的形式导出。

设置单元格的Format属性以显示百分比到小数点后两位:p2

导出到 Excel 时,完整的字段值将在那里,客户端可以将其格式化为 5 位小数。

【讨论】:

以上是关于s-s-rS 字段中的四舍五入的主要内容,如果未能解决你的问题,请参考以下文章

将json中所有字段四舍五入保留n位小数

MySQL中round()四舍五入之坑

十进制数据类型正在四舍五入值

怎样用REPLACE函数替换oracle表中某一字段的值?

SQL SERVER中的ROUND()函数有三个参数,请问这三个参数分别代表啥?

3.1.4MySQL__数据库分组,拼接查询,日期函数,日期加减,间隔,数值四舍五入,排序,分组,having筛选,分组TopN,流程控制函数,