【发布时间】:2017-01-31 17:11:56
【问题描述】:
我有一个基于参数@SearchType 返回列数的存储过程。所以首先它检查参数值是什么,然后 SELECT 语句返回数据。
我的问题是如何在 SSRS 中使用此程序?它不会给我带来任何列,因此我可以将其添加到表格或矩阵中。
在 SSMS 中,该过程可以正常工作。 必须有一个解决方法。
谢谢
ALTER PROCEDURE dbo.RPT_spLoadUserOpenTasks
(
@UserGUID varchar(8000) = NULL,
@NoteStoreType INT = NULL,
@DateFrom datetime = NULL,
@DateTo datetime =NULL,
@LineGUID varchar(8000) = NULL
)
AS
IF @SearchType = 0
BEGIN
SELECT DISTINCT
TOP 100 PERCENT
Column1,
Column2,
Column3
--other columns
FROM
dbo.tblNoteEntities (nolock)
--some other JOINs here
WHERE tq.LineGuid IN (SELECT * FROM @LineTable)
AND
(@UserGUID IS NULL OR tblNoteRecipients.UserGUID = @UserGUID)
ORDER BY Column1
RETURN
END
--------------------------------------------------------------------------------
if @SearchType = 1 --eq and eq access
BEGIN
SELECT DISTINCT
TOP 100 PERCENT
Column4,
Column5,
Column6
FROM
dbo.tblNoteEntities (nolock)
--some other JOINs here
WHERE tq.LineGuid IN (SELECT * FROM @LineTable)
AND
(@UserGUID IS NULL OR tblNoteRecipients.UserGUID = @UserGUID)
ORDER BY Column1
RETURN
END
--------------------------------------------------------------------------------
if @SearchType = 3 --And so on
【问题讨论】:
标签: sql-server tsql reporting-services