ReportViewer IIf表达式在文本框中返回#ERROR

时间:2010-10-19 19:59:25

标签: c# reportviewer iif

我正在使用ReportViewer工作,我试图让一个IIf表达式与一些使用FormatCurrency()的文本框一起工作。我首先需要一个IIf语句的原因是因为偶尔在这个报告中会有null参数。这里的示例是可能有或没有值的装运箱。如果它有一个值,比如15,它将正确格式化为$ 15.00。如果它没有值,则返回#ERROR。显然这不行。

这是一个IIf语句,我正在使用另一个完全正常工作的报表(设置文本框的可见性):

=IIf(Fields!DATASET_NAME.Value.ToString() <> "DELETE", True, False)

这是一个不起作用的那个:

=IIf(Parameters!ShipAmt.Value.ToString() <> "", FormatCurrency(Parameters!ShipAmt.Value,2), "")

IIf似乎有效,因为如果我输入一个值,它仍然可以正确格式化,但没有值它仍会返回#ERROR。有什么想法吗?

1 个答案:

答案 0 :(得分:3)

在空值上调用ToString()会转到Kaboom。尝试IsNot Nothing。

但我认为真正的答案is here