SSRS条件格式将数字加倍并显示错误的百分比

时间:2017-07-17 15:46:23

标签: reporting-services formatting

所有

我的SSRS报告中有两列。它们是:Data(float)和Format(varchar)。

格式可以有三个值之一:“N”,“%”,“$”。

如果格式列为“N”,我需要将列格式化为“#,## 0”。如果列是“%”,我需要将列格式化为百分比。如果格式为“$”,我需要将其格式化为货币。

然而,我所做的一切都在起作用。

我试过了:

=Switch(Fields!month_4_tformat.Value="N", Format(Fields!month_4_Data.Value,"#,##0"), Fields!month_4_tformat.Value="%", Format(Fields!month_4_Data.Value,"P"), True, Format(Fields!month_4_Data.Value,"C"))

=iif(Fields!month_4_tformat.Value="N", Format(Fields!month_4_Data.Value,"#,##0"), iif(Fields!month_4_tformat.Value="%", Format(Fields!month_4_Data.Value,"P"),  Format(Fields!month_4_Data.Value,"C")))

这两种情况都会导致意外结果。如果您查看屏幕截图,第2列,最后一个单元格是“228722870”,虽然数据库值仅为22870,因此该值显示两次,但第1,3,4和5列有效。第二行,第1列是错误的,因为数据库中的值是“0.2”,因此百分比应为“20%”。第三列显示“1616.00”百分比,但它应为“16%”,因为数据库中的值为“0.16”。这些数字都没有格式化为“#,## 0”。

我做错了什么?任何帮助表示赞赏.....

enter image description here

1 个答案:

答案 0 :(得分:0)

使用CSTR功能是我需要或至少解决了这个问题