使用iif函数更改报表生成器中的图像

时间:2013-04-12 14:28:59

标签: sql-server reportbuilder3.0 iif-function

我正在使用sql server report builder,我正在尝试根据参数中选择的日期更改图像的值。 我选择外部作为源,在表达式窗口中我有这样的东西:

=iif(Parameters!Date.Value <> 11.04.2013, "http://rack.0.mshcdn.com/media/ZgkyMDEyLzEyLzA0L2I1L3doZXJlZG9nb29nLmJoTi5qcGcKcAl0aHVtYgk5NTB4NTM0IwplCWpwZw/4931e287/304/where-do-google-doodles-come-from--ff2932470c.jpg", " ")

但我收到以下消息:

Argument not specified for parameter 'TruePart' of 'Public Function IIf(Expression As Boolean, TruePart As Object, FalsePart As Object) As Object'.

我很擅长使用报表生成器,所以请有人帮我找出解决方案。

1 个答案:

答案 0 :(得分:1)

我将您的表达式粘贴到使用参数日期设置的示例报表中,数据类型日期/时间,并在使用表达式时遇到相同的错误。

我通过将与表达式中的参数进行比较的数据更改为可以轻松转换为日期的字符串来解决此问题,因此从11.04.2013"11-Apr-2013"

=iif(Parameters!Date.Value <> "11-Apr-2013", "http://rack.0.mshcdn.com/media/ZgkyMDEyLzEyLzA0L2I1L3doZXJlZG9nb29nLmJoTi5qcGcKcAl0aHVtYgk5NTB4NTM0IwplCWpwZw/4931e287/304/where-do-google-doodles-come-from--ff2932470c.jpg", " ")

当我选择不同日期时,这停止了我发生的错误并按预期工作;即除2013年4月11日之外的所有日期的URL。