报告服务2008:ReportExecution2005.asmx不存在

时间:2010-06-02 10:12:13

标签: reporting-services ssrs-2008

我正在尝试直接从代码生成报告(之后通过邮件发送)。我在Windows服务中做到这一点。

所以这就是我正在做的事情:

Dim rview As New ReportViewer()

Dim reportServerAddress As String = "http://server/Reports_client"
rview.ServerReport.ReportServerUrl = New Uri(reportServerAddress)

Dim paramList As New List(Of Microsoft.Reporting.WinForms.ReportParameter)
paramList.Add(New Microsoft.Reporting.WinForms.ReportParameter("param1", t.Value))
paramList.Add(New Microsoft.Reporting.WinForms.ReportParameter("CurrentDate", Date.Now))

Dim reportsDirectory As String = "AppName.Reports"
Dim reportPath As String = String.Format("/{0}/{1}", reportsDirectory, reportName)

rview.ServerReport.ReportPath = reportPath
rview.ServerReport.SetParameters(paramList) 'This is where I get the exception

Dim mimeType, encoding, extension, deviceInfo As String
Dim streamids As String()
Dim warnings As Microsoft.Reporting.WinForms.Warning()

deviceInfo = "<DeviceInfo><SimplePageHeaders>True</SimplePageHeaders></DeviceInfo>"

Dim format As String = "PDF"

Dim bytes As Byte() = rview.ServerReport.Render(format, deviceInfo, mimeType, encoding, extension, streamids, warnings)

调试此代码时,我看到它会抛出MissingEndpointException我在SetParameters(paramList)处显示此消息:

  

尝试连接报告   服务器失败。检查你的连接   信息和报告服务器   是一个兼容的版本。

查看服务器的日志文件,我可以看到:

  !

UI ReportManager_0-8 878 6月2日/ 2010-11:!34:36 ::   未处理的异常:   System.Web.HttpException:该文件   '/Reports_client/ReportExecution2005.asmx'   不存在。在   System.Web.UI.Util.CheckVirtualFileExists(VirtualPath   virtualPath)at   System.Web.Compilation.BuildManager.GetVPathBuildResultInternal(VirtualPath   virtualPath,Boolean noBuild,Boolean   allowCrossApp,Boolean   allowBuildInPrecompile)at   System.Web.Compilation.BuildManager.GetVPathBuildResultWithNoAssert(HttpContext的   上下文,VirtualPath虚拟路径,   布尔值noBuild,布尔值   allowCrossApp,Boolean   allowBuildInPrecompile)at   System.Web.Compilation.BuildManager.GetVPathBuildResult(HttpContext的   上下文,VirtualPath虚拟路径,   布尔值noBuild,布尔值   allowCrossApp,Boolean   allowBuildInPrecompile)at   System.Web.Compilation.BuildManager.GetVPathBuildResult(HttpContext的   context,VirtualPath virtualPath)
  在   System.Web.UI.WebServiceParser.GetCompiledType(字符串   inputFile,HttpContext context)at   System.Web.Services.Protocols.WebServiceHandlerFactory.GetHandler(HttpContext的   context,String verb,String url,   String filePath)at   System.Web.HttpApplication.MapHttpHandler(HttpContext的   context,String requestType,   VirtualPath路径,String   pathTranslated,Boolean useAppConfig)   在   System.Web.HttpApplication.MapHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()   在   System.Web.HttpApplication.ExecuteStep(IExecutionStep   步,布尔&amp; completedSynchronously)

我在网上找不到适合我问题的资源。有人有线索吗 ?我能够从Web应用程序查看报告,所以我确定服务器正在运行。

提前致谢。

2 个答案:

答案 0 :(得分:7)

没关系,我对服务器名称感到困惑......

而不是使用

http://server/Reports_client

,我只需要使用

http://server/ReportServer_client

答案 1 :(得分:0)

Reporting Service Configuration Manager

我已附上报告服务器配置管理器的屏幕截图,并突出显示了报告服务器集成URL