如何设置 SQL 服务器权限以使 SSRS 使用存储过程而不是嵌入式查询?

How can I set up the SQL Server permissions to make SSRS utilize a stored procedure rather than an embedded query?

我正在尝试使用存储过程中的查询来设置 SSRS 报告。我以前在报表中嵌入了查询,但出于各种原因我想改用存储过程。

所有 SSRS 报告都是 运行 来自名为 reporting.

的 SQL 服务器用户

我的存储过程名称是 proc,模式名称是 reports。对于名为 reporting 的用户,并授予该用户对 selectexecute 的权限。 (我想。见。)

我可以 运行 使用我的完全权限帐户时的存储过程(以确认它确实有效),并且该报告在 Visual Studio 2012 年内有效。

当我将报告上传到报告服务器,然后尝试通过网络浏览器访问它时,我收到以下错误消息:

The report server cannot process the report. The data source connection information has been deleted. (rsInvalidDataSourceReference)

任何人都可以提示我如何使报告按预期显示吗?

谢谢。

当您上传报告时,它失去了您对该程序的权利。您必须在报表的数据源中输入一个对存储过程具有执行权限的用户(它可以是您或任何其他人,只要您知道密码并且它具有所需的权限)。