値が複数のパラメーターを持つストアード・プロシージャー(SSRSで使用される)を作成しました。そのパラメータの値を指定してSSMSでこのストアドプロシージャを実行すると、SPは結果を返しません。1行以上を返す必要があります
以下は与えられたSPです
CREATE PROCEDURE [dbo].[sp_tst_CSENG_JulieCapitalHours]
@StartDate DATETIME ,
@EndDate DATETIME ,
@ProjHomeGrp NVARCHAR(MAX) ,
@ProjHier NVARCHAR(MAX)
AS
BEGIN
SELECT [Capital Project] ,
[Capital Task] ,
ResourceName ,
ProjectName ,
[Project Home Group] ,
ActualWork ,
TimeByDay ,
ResourceStandardRate ,
ActualWork * ResourceStandardRate AS Dollars ,
[Project Hierarchy]
FROM [IR.CapOnly]
WHERE ( TimeByDay >= @StartDate )
AND ( [Project Home Group] IN ( @ProjHomeGrp ) )
AND ( TimeByDay <= @EndDate )
AND ( ActualWork > 0 )
AND ( [Project Hierarchy] IN ( @ProjHier ) )
ORDER BY ProjectName ,
ResourceName
END
where句では、Project Home Group(@ProjHomeGrp
)とProject Hierarchy(@ProjHier
)がパラメーターであり、指定された場合(1を超える)SPがゼロ値を返すことがわかります。
私が渡している値は次のとおりです。
Start Date: 1/1/2011
End Date: 12/31/2012
@ProjHomeGrp : PHG1,PHG2,PHG3,PHG4,PHG5,PHG6,PHG7
@ProjHier: PROH1, PROH2, PROH3
ご不明な点がございましたらお知らせください。