SSRS 将字符串格式化为 if 语句中的百分比

SSRS Format string to percentage inside if statement

我确实有列作为字符串,其中包含数字和一些值是“N/A”。我想当它不是“N/A”时格式为百分比,而当“N/A”时只保留“N/A”。

我尝试了一些选项,例如:

iif(FieldColumn="N/A","N/A",FormatPercent(FieldColumn))

当它不是“N/A”时它正在转换为百分比,但对于 N/A 行它显示 #Error。

有什么解决办法吗?有可能做到吗?谢谢

可能有更简洁的方法来执行此操作,但由于您的字段是字符串,我们需要几个步骤才能实现此目的。

首先,将 Value 表达式更改为此。

=IIF(
     ISNUMERIC(Fields!myField.Value) = 0 , "N/A",
     VAL(Fields!myField.Value)
     )

这将 return“N/A”或实际数字

接下来将文本框的Format 属性设置为

=IIF(Fields!myField.Value = "N/A", Nothing, "p2")

这会将格式设置为 'percentage with 2 decimal places',除非字段为“N/A”,在这种情况下不应用任何格式。