0

SSAS からのデータを使用して SSRS に取り組んでおり、レポートを作成しています。

複数値のパラメータで、別のパラメータが選択されたときにパラメータの値を自動選択したい。

例: In Month パラメータ; 値リストで 6 番目の月を選択すると、1 番目から 6 番目までのすべての値が選択されます。または、パラメータの値をチェックすると、以前の値もチェックされます。

手順は、使用可能なすべての値をチェックする [すべて選択] オプションをチェックする場合と同様です。

どんな提案でも大歓迎です。

ご協力いただきありがとうございます。

4

1 に答える 1

0

2 つの方法のいずれかで、2 番目のパラメーターを最初のパラメーターにバインドします。どちらの場合も、パラメーターへのバインドに使用する「データセット」をセットアップします。

  1. データセットに「フィルター」を設定して、条件のみを返すことができます。

  2. 最初のパラメーターによって設定されたパラメーターを参照する 2 番目の日付セットに述語を含めることができます。

EG: 'person' データ セットがある場合: (これらはどちらも SSRS 2008 または 2012 で動作するはずです)

declare @Person Table ( personID int identity, person varchar(8));

insert into @Person values ('Brett'),('Sean'),('Chad'),('Michael'),('Ray'),('Erik'),('Queyn');

Select top 100 *
from @Person p

そして、「注文」データセット:

declare @Orders table ( OrderID int identity, PersonID int, Desciption varchar(32), Amount int);

insert into @Orders values (1, 'Shirt', 20),(1, 'Shoes', 50),(2, 'Shirt', 22),(2, 'Shoes', 52),(3, 'Shirt', 20),(3, 'Shoes', 50),(3, 'Hat', 20),(4, 'Shirt', 20),(5, 'Shirt', 20),(5, 'Pants', 30),
(6, 'Shirt', 20),(6, 'RunningShoes', 70),(7, 'Shirt', 22),(7, 'Shoes', 40),(7, 'Coat', 80)

select *
from @Orders

「クエリからデータを取得」を使用する Person 変数を設定し、「PersonID」を値に、「person」をラベルに設定するとします。次に、次のようなフィルターまたは where 句を追加して、最初のパラメーターから値を取得する 2 番目のパラメーターを設定できます。

select *
from @Orders 
where PersonID in (@Person)
于 2013-04-05T17:39:46.353 に答える