単純なクエリから使用可能な値が取得されるパラメータに値を追加する方法を探しています。私は今日SSRSをいじり始めたばかりです、私はそれをすべて間違ってやっていないことを望みます。
レポートプロジェクトから次の手順を実行します(厄介です、私は知っています):
CREATE PROCEDURE RAW_TIME_VAR
@EMPLID as varchar(6) = NULL
, @EMPLNAME as varchar(80) = NULL
, @CHARGENO as int = NULL
, @TYPE as varchar(8) = NULL
, @STARTDATE as date = NULL
, @ENDDATE as date = NULL
AS
Select * from DBO.RAW_TIME
Where ([EMPL ID] = @EMPLID OR @EMPLID IS NULL)
AND ([EMPL NAME] = @EMPLNAME OR @EMPLNAME IS NULL)
AND ([CHARGE NO] = @CHARGENO OR @CHARGENO IS NULL)
AND ([CHARGE TYPE] = @TYPE OR @TYPE IS NULL)
AND [CHARGE DATE] Between @STARTDATE AND @ENDDATE
レポートプロジェクトには2つのデータセットがあります(私はVS2008ビジネスインテリジェンス開発スタジオを使用しています)。1つは上記の手順(RAW_TIME_DATASET)から生成され、もう1つは同じビューからのクエリで従業員IDと名前(NAMES)を入力します。
SELECT DISTINCT [EMPL ID], [EMPL NAME]
FROM RAW_TIME
ORDER BY [EMPL ID]
パラメータコンボボックスで値「All」を選択@EMPLNAME
して渡すこともできると同時に、NAMESデータセットからのすべての従業員名をパラメータに入力できるようにしたい。NULL
「すべて」は、を使用してクエリで渡すことができます。これによりUNION
、ビューに表示されずにコンボボックスに配置されますが、レポートにとして渡すことはできませんNULL
。エラー...これが理にかなっているといいのですが。