我正在处理SSRS 2008 R2报告,并且我正在动态显示图像。如果我们的报表服务器上不存在该图像,我想隐藏图像框并显示带有“未找到图像”文本的图标。
我已尝试过一些表达式的东西,但根据图像是否存在,我无法让它们正确返回true或false。
我用来显示图像的表达式是:
="/BusinessIntelligence/Drilldown Reports/" + Fields!item.Value + ".jpg"
为了测试我是否可以让报告检测图像是否存在,我将文本框拖到我的报告上并尝试使用以下表达式以尝试返回True
或False
。
=IIf(IsNothing("/BusinessIntelligence/Drilldown Reports/" + Fields!item.Value + ".jpg"), "Woohoo!", "Do'h!")
这总是返回False,即使图像存在。
我甚至尝试使用我发现here的一些自定义代码。
代码:
Function IsValid(ByVal Url As String) As Boolean
Dim sStream As IO.Stream
Dim URLReq As Net.HttpWebRequest
Dim URLRes As Net.HttpWebResponse
Try
URLReq = Net.WebRequest.Create(Url)
URLReq.Credentials = System.Net.CredentialCache.DefaultCredentials
URLRes = URLReq.GetResponse()
sStream = URLRes.GetResponseStream()
Dim reader As String = New IO.StreamReader(sStream).ReadToEnd()
Return True
Catch ex As Exception
Return False
End Try
End Function
我用于该代码的表达式是:
=IIf(Code.IsValid("/BusinessIntelligence/Drilldown Reports/" + Fields!item.Value + ".jpg"), "Woohoo!", "Do'h!")
但这也总是会返回false。
答案 0 :(得分:0)
您的错误是您正在为网页IsValue使用保留字。将您的函数名称更改为IsThere,它应该是有用的。