SSRS子报告在本地失败,但在服务器和同事的机器

时间:2016-01-20 20:31:35

标签: ssrs-2008-r2

我的同事正在更改我正在开发的报告中使用的子报告。由于我收到了最新的更改,因此我的报告显示以下错误代替子报告:

Data retrieval failed for the subreport, 'sub1', located at: /sub1. Please check the log files for more information.

这些变化太多,无法在此处发布或描述。参数已更改。大量的格式更改,表达和值更改等。

VS在错误窗口中显示:

Warning 1
[rsErrorExecutingSubreport] An error occurred while executing the subreport 'sub1' (Instance: 401iT1R0R0R0x0S0):
Data retrieval failed for the subreport, 'sub1', located at: /sub1.
Please check the log files for more information.
[rsNone] Data retrieval failed for the subreport, 'sub1', located at: /sub1.
C:\Workspace\Reports\Statement.rdl  0   0   

但是当我将报告上传到部署子报告的服务器时,报告工作正常。该同事编写了另一份报告,其中使用了该子报告。该报告在服务器和计算机上都能正常工作,但在我的机器上却无法正常工作。

如果我尝试自己运行子报告,则会显示错误:

An error occurred during local report processing.
An error occurred during report processing.

此报告使用了我的同事开发的另外4个子报告,所有这些报告都在报告上显示,并在本地或服务器上单独运行。

我应该检查哪些项目?不熟悉这种情况通常是相反的 - 在本地工作但不在服务器上工作。谢谢!

1 个答案:

答案 0 :(得分:0)

在过去几个小时内问题升级到我的同事的机器后,同事刚刚找到了解决方案:打开子报告,转到报告数据选项卡,编辑数据源,转到到凭据,切换到"使用此用户名和密码"到"提示凭据",然后切换回来,单击确定按钮,切换到预览并看到子报告正常工作。

这不会进行更改并且不需要保存,但它修复了VS2012可能在内部创建并保存在注册表或内部文件中的任何错误(从删除 var DB = new Array(); function MakeDB() { DB = CSV.split('\n'); } function CSVsearch(dbInfo) { var posn = -1; for (i=0; i<DB.length; i++) { tmp = DB[i]; if (tmp.indexOf(dbInfo) != -1) { posn = i; break; } } if (posn == -1) { alert('No matching result from the file'); } else { document.getElementById('tblDisplay').innerHTML = displayAsTable(DB[posn]); } } function displayAsTable(info) { var table = '<table border="1" width="75%" bgColor="F5F5F5" borderColor="FFFFFF">'; var ary = info.split(','); table += '<tr align="left"><th align="left">'+ary.join('</tr><th align="left">')+'</td></tr>'; table += '</table>'; return table; } function resetthis() { document.getElementById("myForm").reset(); 文件的事实可以看出,重启VS或重启机器无法修复错误情况。)

嘘,微软!嘘!这是2012年与2008 BI Studio的新错误。