繁体   English   中英

SSRS-基于参数调用多个存储过程

[英]SSRS - multiple stored procedures to be called based on a parameter

我在Microsoft SSRS 2008中遇到以下特定问题:

我必须执行一个存储过程,该过程将返回具有相同列但格式不同的数据:

EXEC Main_SP
   @View = .....

IF @View = Yearly,
BEGIN
  EXEC SP_Yearly_Data
END

IF @View = Quarterly,
BEGIN
  EXEC SP_Quarterly_Data
END

IF @View = Monthly,
BEGIN
  EXEC SP_Monthly_Data
END

IF @View = Weekly,
BEGIN
  EXEC SP_Weekly_Data
END

所有这四个过程将具有相同的数据结构,即。 相同的列,只有分组会有所不同,因此行数也会有所不同。

在SSRS中可以成功工作吗?

有更好的方法吗?

SSRS报告设计器中的数据集是否可以快速刷新以向我提供与提供的@View参数相关的数据?

任何建议将不胜感激。

请注意,这4个内部过程中的每一个都有3-4个参数,所有参数都相同。

您可以在SSRS报表的SQL查询中使用IF语句。 我不明白为什么您的SQL无法使用。

但是,我认为创建一个主存储过程将更加干净,该主存储过程除其他参数外还接受@View参数,它将进行条件分支并返回结果。 这也将允许您将其作为存储过程在SSRS数据集中运行,而不是在其中包含大量IF条件的S​​QL语句中运行。

更改参数值时,您将需要重新运行报表,但它将返回正确的数据集,而不是使用缓存的数据集,因为参数的值将发生更改。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM