使用ssrs报告配置动态存储过程

时间:2016-07-22 04:48:49

标签: sql sql-server reporting-services ssrs-2008 ssrs-2012

我有以下SP

创建程序Studentrocedure     @Type varchar(50)

AS
BEGIN

    If @Type  = 'Student'
    Select * from tblStudent
    Else If  @Type  = 'Fee'
    Select * from tblFee
    End
END

我遇到的问题是,当我为SSRS报告添加数据集时,它在字段部分中不提取任何字段/列。

我该如何解决?

2 个答案:

答案 0 :(得分:0)

  • ELSE部分附近的语法错误,应为ELSE IF
  • 查询中也不需要额外的End
  • 而不是*明确提及列名


CREATE PROCEDURE Studentrocedure
    @Type varchar(50)
AS
BEGIN

    IF @Type  = 'Student'
        Select * from tblStudent
    ELSE IF  @Type  = 'Fee' 
        Select * from tblFee
END

答案 1 :(得分:0)

假设您的select *查询返回不同的结果集,您实际上无法解决此问题。数据集需要一组确定的字段。您无法动态确定将包含在数据集中的字段。

如果您确信动态选择的结果将始终永远返回相同的列集而不管给定的输入,那么您可以使用FMTONLY选项进行探索。

查看this link