SSRS 2008 R2检查报表服务器上是否存在外部映像

时间:2014-10-17 20:31:39

标签: reporting-services ssrs-2008 ssrs-2008-r2

我正在处理SSRS 2008 R2报告,并且我正在动态显示图像。如果我们的报表服务器上不存在该图像,我想隐藏图像框并显示带有“未找到图像”文本的图标。

我已尝试过一些表达式的东西,但根据图像是否存在,我无法让它们正确返回true或false。

我用来显示图像的表达式是:

="/BusinessIntelligence/Drilldown Reports/" + Fields!item.Value + ".jpg"

为了测试我是否可以让报告检测图像是否存在,我将文本框拖到我的报告上并尝试使用以下表达式以尝试返回TrueFalse

=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。

1 个答案:

答案 0 :(得分:0)

好的,我需要这个感谢。

您的错误是您正在为网页IsValue使用保留字。将您的函数名称更改为IsThere,它应该是有用的。