Sql server 生成SSRS报告错误,但不';不知道为什么-BC30311类型错误的值无法转换为字符串

Sql server 生成SSRS报告错误,但不';不知道为什么-BC30311类型错误的值无法转换为字符串,sql-server,reporting-services,Sql Server,Reporting Services,我有一个正在执行的存储过程,用于在SSRS中创建深入报告。在生成此错误的表达式中,我为特定列值定义了以下内容: =IIF(ISNOTHING(Fields!RN) AND Fields!TermType = "New", Fields!WrittenPremium.Value, 0) 田野!WrittenPremium.Value是SQL Server 2017中的货币数据类型,错误显示如下: The Value expression for the textrun &qu

我有一个正在执行的存储过程,用于在SSRS中创建深入报告。在生成此错误的表达式中,我为特定列值定义了以下内容:

=IIF(ISNOTHING(Fields!RN) AND Fields!TermType = "New", Fields!WrittenPremium.Value, 0)
田野!WrittenPremium.Value是SQL Server 2017中的货币数据类型,错误显示如下:

The Value expression for the textrun "WrittenPremium.Paragraphs[0].TextRuns[0]' contains an error: [BC30311] Value of type 'Microsoft.ReportingServices.ReportProcessing.ReportObjectModel.Field' cannot be converted to 'String'. 

我不确定为什么会产生此转换错误,可能需要任何帮助/指导。谢谢。

您需要指定value属性,而不仅仅是字段。所以一个简单的改变是

=IIF(ISNOTHING(Fields!RN.Value) AND Fields!TermType.Value = "New", Fields!WrittenPremium.Value, 0)

。。。应该可以工作。

您需要指定value属性,而不仅仅是字段。所以一个简单的改变是

=IIF(ISNOTHING(Fields!RN.Value) AND Fields!TermType.Value = "New", Fields!WrittenPremium.Value, 0)

。。。应该能行。

艾伦,非常感谢你。我觉得自己很愚蠢。感谢您抽出时间来看这篇文章。:)我做这件事已经多年了,记不清了,但我仍然时不时地犯这样的错误。如果这个答案解决了您的问题,请您将其标记为已接受。谢谢,艾伦,非常感谢你。我觉得自己很愚蠢。感谢您抽出时间来看这篇文章。:)我做这件事已经多年了,记不清了,但我仍然时不时地犯这样的错误。如果这个答案解决了您的问题,请您将其标记为已接受。谢谢