IIF(IsNothing(Fields!field.value),“”,Fields!.value.ToString))生成错误

时间:2012-03-29 19:46:10

标签: sql-server-2005 reporting-services

SQL Server 2005报告服务。

我想在报告文本框中使用以下内容:

=IIF(IsNothing(Fields!Certification.Value), "", 
    "Certs: " + Fields!Certification.Value.ToString() )

但由于评估了双方(T / F),当字段为空时,我在报告中收到错误。我怎么能绕过这个?

3 个答案:

答案 0 :(得分:5)

使用以下表达式

=IIF(IsNothing(Fields!Certification.Value),nothing,"Certs: " & CStr(Fields!Certification.Value))

答案 1 :(得分:1)

认证字段是计算字段还是数据库字段?

如果是计算字段,则再次检查您的陈述。

因为即使记录包含空值,我也不必使用'IIF',只需在文本框中使用Fields!Certification.Value

答案 2 :(得分:1)

解决这种情况的另一种方法是在SQL查询中执行ISNULL(认证,'')。当然假设您正在查询SQL Server。

SELECT ISNULL(Certification,'') as Certification 
FROM YourTableName

这样就可以删除结果集中出现的任何NULL。