rs.exe报告脚本 - 无法连接到服务器ReportService2005.asmx

Gab*_*abe 5 reporting-services

我正在调用此rs.exe脚本来运行并导出报告:

rs -i RunReport.rss -s http://localhost/reportserver -u myUsername -p myPassword -e Exec2005
Run Code Online (Sandbox Code Playgroud)

我得到的错误是:

Could not connect to server: http://localhost/reportserver/ReportService2005.asmx
Run Code Online (Sandbox Code Playgroud)

目前,我们所有的报告都设置为使用"用户提供的凭据".如果我转到报告并输入用户名和密码,它运行正常.它只是无法运行脚本.

当我将报表的数据源更改为使用Windows Integrated Security时,脚本可以正常工作.

关于我做错了什么的任何想法?或者,有没有办法将报告的权限更改为Windows Auth,然后将其更改回来?

SSRS 2012

我的rss脚本是

Public Sub Main()
  rs.Credentials = System.Net.CredentialCache.DefaultCredentials

  Dim format as string = "EXCEL"
  Dim fileName as String = "C:\test.xls"
  Dim reportPath as String = "/MyDirectory/Report1"

  ' Prepare Render arguments
  Dim historyID as string = Nothing
  Dim deviceInfo as string = Nothing
  Dim extension as string = Nothing
  Dim encoding as string 
  Dim mimeType as string 
  Dim warnings() AS Warning = Nothing
  Dim streamIDs() as string = Nothing
  Dim results() as Byte

  rs.LoadReport(reportPath, historyID)

  results = rs.Render(format,  deviceInfo, extension, _
   mimeType, encoding,  warnings, streamIDs)

  ' Open a file stream and write out the report
  Dim stream  As FileStream = File.OpenWrite(fileName)
  stream.Write(results, 0, results.Length)
  stream.Close()
End Sub
Run Code Online (Sandbox Code Playgroud)

小智 7

我遇到了同样的错误,原因是配置错误:脚本设置为针对Report Manager URL而不是Web Service URL运行(两者都可以在Reporting Services配置管理器中找到).切换到Web服务URL为我解决了这个问题.

(我估计你在过去3年里找到了一个解决方法,但是如果其他人正在努力解决同样的问题,我会把它放在这里)