我需要将SSRS报告部署到本地主机的帮助,该报告使用ODBC数据源从excel文件中检索数据。
通过BIDS 2008预览相同的报告时,它将按预期显示结果。但是,将报表部署到运行BIDS的同一台计算机(本地主机)上的报表服务器后,会出现以下错误。
错误:引发Microsoft.ReportingServices.ReportProcessing.ReportProcessingException :、 Microsoft.ReportingServices.ReportProcessing.ReportProcessingException:无法创建与数据源“dsInvoice”的连接。 ---> System.Data.Odbc.OdbcException:错误[IM002] [Microsoft] [ODBC驱动程序管理器]找不到数据源名称,也未指定默认驱动程序
我尝试了共享数据源以及自定义数据源,但是两者均无效。当我查找此错误时,它提到我需要在%windir%\SysWOW64\odbcad32.exe 下使用 32位ODBC管理器工具,这是我正在使用的工具,但那也没有用。我是本地计算机上的管理员。
以下是有关机器的一些信息:
重现该错误的步骤:
最佳答案
首先使用OLEDB代替ODBC会更容易,OLEDB的连接字符串如下所示:
Provider=Microsoft.ACE.OLEDB.12.0;Data Source=c:\myFolder\myExcel2007file.xlsx;
Extended Properties="Excel 12.0 Xml;HDR=YES";
然后,在SSRS/BIDS中,当您在“数据源”屏幕中单击“测试连接”时,您可能会看到此错误:
该文档指出MS Access驱动程序(包括OLEDB驱动程序)仅在x86平台上工作,并且在x64或AnyCPU平台下不兼容。但是,这似乎是不正确的。引用:https://stackoverflow.com/a/32760211/495455
首先下载安装程序,确保您在上打勾_64.exe 版本:http://www.microsoft.com/en-us/download/details.aspx?id=13255
AceRedist.msi /passive
完成这些步骤之后,在以x64或AnyCPU构建配置进行构建之后,我设法运行了该应用程序(以及没有BIDS的SSRS)。这解决了问题。
关于sql-server-2008 - SSRS-将报表部署到localhost报表服务器时,Excel数据源错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42940249/