SSRS隐藏#错误

时间:2018-08-22 15:16:30

标签: sql visual-studio reporting-services ssrs-2012 ssrs-expression

使用以下表达式后,我在某些单元格上得到了#Error,有什么想法吗?

=iif(Fields!PercentageCompleted.Value >= (ReportItems!ExpectedComplPercentage.Value) * 100, "Yes", "")

1 个答案:

答案 0 :(得分:1)

#Error代码是编译器错误,通常导致类型不匹配。如果在VB.NET解释为字符串的那些字段之一中有一个值,则它无法进行数学比较,因此会出现错误。

要解决此问题,请使用CINT(整数)或CDEC(十进制)函数将值转换为所需的数据类型。作为参考,如果您稍后尝试比较字符串,则CSTR会转换为字符串,而CDATE会转换为日期。

=iif(CDEC(Fields!PercentageCompleted.Value) >= CDEC(ReportItems!ExpectedComplPercentage.Value) * 100, "Yes", "")

注意:我建议您几乎总是在表达式中强制转换数据类型,以免出现问题。