如何向SSRS中的过程传递参数?

问题描述 投票:0回答:2

我有一张这样的桌子:

create table emp(empid, empname, sal)

insert emp values(101, 'srewt', 1500)

该表包含 10000 行。

我也有一个这样的存储过程:

create procedure p1 (@eid int)
as
begin
   select * from emp where empid = @eid)
end

在 SSRS 中我执行此过程

exec p1 (' ')

但我必须向报告提供用户交互以传递

empid
值(除了参数之外什么都没有)

如何向报表传递参数?

ssrs-2008
2个回答
0
投票

您可以在报表设计器中定义参数。打开报告数据选项卡(应该与解决方案资源管理器位于同一位置。如果不存在,您可以通过打开报告并单击“查看-报告数据”来显示报告数据坞)。

双击报表数据集,可以配置报表参数。如果您选择带有参数的存储过程作为数据源,设计器应自动检测该过程的参数并为您填写参数选项卡中的值。但请务必检查数据类型,因为检测到的数据类型通常不是您真正需要的数据类型。


0
投票

在您的数据集中,只需将

exec p1 (@EmpID)
作为查询传递,然后将在报告中自动创建名为 EmpID 的参数。这里,当用户运行报告时,它要求输入 EmpID,只需提供 ID 并运行报告...

© www.soinside.com 2019 - 2024. All rights reserved.