カスケード型パラメーターのレポートへの追加 (レポート ビルダーおよび SSRS)
カスケード型パラメーターを使用すると、大量のレポート データの管理が可能になります。 パラメーターの値の一覧が、別のパラメーターで選択された値によって決まるように、関連するパラメーターのセットを定義できます。 たとえば、最初のパラメーターが独立しており、製品カテゴリの一覧を表すとします。 ユーザーが任意のカテゴリを選択すると、2 番目のパラメーターは最初のパラメーターの値によって決まります。 その値は、選択したカテゴリ内のサブカテゴリの一覧で更新されます。 ユーザーがレポートを表示するとき、カテゴリ パラメーターとサブカテゴリ パラメーターの両方の値を使用して、レポート データにフィルターが適用されます。
注 |
---|
SQL Server データ ツールのレポート ビルダーまたはレポート デザイナーを使用して、レポート定義 (.rdl) を作成および変更できます。これらの作成環境では、レポートおよび関連アイテムの作成方法、開く方法、および保存方法が異なります。詳細については、microsoft.com Web サイトの「レポート デザイナーおよびレポート ビルダーを使用したレポートのデザイン (SSRS)」を参照してください。 |
カスケード型パラメーターを作成するには、まずデータセット クエリを定義し、必要な各カスケード型パラメーターにクエリ パラメーターを指定します。 各カスケード型パラメーターについて、使用可能な値を提供する独立したデータセットを作成する必要もあります。 詳細については、「レポート パラメーターの値の追加、変更、または削除 (レポート ビルダーおよび SSRS)」を参照してください。
一覧の後半にあるパラメーターのデータセット クエリには一覧の前半にある各パラメーターへの参照が含まれているため、カスケード型パラメーターでは順序が重要な意味を持ちます。 実行時には、レポート データ ペインのパラメーターの順序によって、パラメーター クエリがレポート内で作成される順序が決まります。したがって、ユーザーが後続の各パラメーター値を選択する順序が決まります。
複数の値を使用したカスケード型パラメーターを作成する方法、および [すべて選択] 機能を含める方法の詳細については、「How to have a Select All Multivalue Cascading Parameter」を参照してください。
関連する複数のパラメーターを含むクエリを使用してメイン データセットを作成するには
レポート データ ペインでデータ ソースを右クリックし、[データセットの追加] をクリックします。
[名前] ボックスに、データセットの名前を入力します。
[データ ソース] ボックスのデータ ソースの名前を選択するか、[新規] をクリックして名前を作成します。
[クエリの種類] ボックスで、選択したデータ ソースにクエリの種類を選択します。 このトピックでは、クエリの種類として [テキスト] を使用します。
[クエリ] ボックスに、このレポートにデータを取得するためのクエリを入力します。 クエリには次の要素が必要です。
データ ソース フィールドの一覧。 たとえば Transact-SQL ステートメントでは、SELECT ステートメントは指定されたテーブルまたはビューのデータベース列名の一覧を指定します。
カスケード型パラメーターごとに 1 つのクエリ パラメーター。 クエリ パラメーターは、クエリに含める特定の値またはクエリから除外する特定の値を指定することによって、データ ソースから取得するデータを制限します。 通常、クエリ パラメーターはクエリの制約句で使用されます。 たとえば Transact-SQL SELECT ステートメントでは、クエリ パラメーターは WHERE 句で使用されます。 詳細については、SQL Server オンライン ブックにある Reporting Services のマニュアルの「WHERE と HAVING を使ったフィルターによる行選択」を参照してください。
[実行] (!) をクリックします。 クエリ パラメーターを指定し、クエリを実行したら、クエリ パラメーターに対応するレポート パラメーターが自動的に作成されます。
注 最初にクエリを実行したときのクエリ パラメーターの順序によって、クエリ パラメーターがレポート内で作成される順序が決まります。 順序を変更するには、「レポート パラメーターの順序の変更 (レポート ビルダーおよび SSRS)」を参照してください。
[OK] をクリックします。
次に、独立したパラメーターの値を提供するデータセットを作成します。
独立したパラメーターの値を提供するデータセットを作成するには
レポート データ ペインでデータ ソースを右クリックし、[データセットの追加] をクリックします。
[名前] ボックスに、データセットの名前を入力します。
[データ ソース] ボックスに表示された名前が、手順 1. で選択したデータ ソースの名前であることを確認します。
[クエリの種類] ボックスで、選択したデータ ソースにクエリの種類を選択します。 このトピックでは、クエリの種類として [テキスト] を使用します。
[クエリ] ボックスに、このパラメーターに値を取得するためのクエリを入力します。 通常、独立したパラメーターのクエリにはクエリ パラメーターが含まれません。 たとえば、すべてのカテゴリの値を提供するパラメーターのクエリを作成するには、次のような Transact-SQL ステートメントを使用できます。
SELECT DISTINCT <column name> FROM <table>
SELECT DISTINCT コマンドは、指定したテーブルの指定した列から一意の各値を取得できるように、結果セットから重複する値を削除します。
[実行] (!) をクリックします。 結果セットには、この最初のパラメーターに使用可能な値が表示されます。
[OK] をクリックします。
次に、このデータセットを使用する最初のパラメーターのプロパティを設定して、実行時に使用可能な値を入力します。
レポート パラメーターに使用可能な値を設定するには
レポート データ ペインでパラメーター フォルダーの最初のパラメーターを右クリックし、[パラメーターのプロパティ] をクリックします。
[名前] ボックスのパラメーターの名前が正しいことを確認します。
[使用できる値] をクリックします。
[クエリから値を取得] をクリックします。 3 つのフィールドが表示されます。
[データセット] ボックスのドロップダウン リストから、前の手順で作成したデータセットの名前をクリックします。
[値] フィールドで、パラメーター値を指定するフィールドの名前をクリックします。
[ラベル] フィールドで、パラメーターのラベルを指定するフィールドの名前をクリックします。
[OK] をクリックします。
次に、従属パラメーターの値を提供するデータセットを作成します。
従属パラメーターの値を提供するデータセットを作成するには
レポート データ ペインでデータ ソースを右クリックし、[データセットの追加] をクリックします。
[名前] ボックスに、データセットの名前を入力します。
[データ ソース] ボックスに表示された名前が、手順 1. で選択したデータ ソースの名前であることを確認します。
[クエリの種類] ボックスで、選択したデータ ソースにクエリの種類を選択します。 このトピックでは、クエリの種類として [テキスト] を使用します。
[クエリ] ボックスに、このパラメーターに値を取得するためのクエリを入力します。 通常、従属パラメーターのクエリには、このパラメーターが依存している各クエリ パラメーターが含められます。 たとえば、カテゴリ (独立したパラメーター) のすべてのサブカテゴリ (従属パラメーター) の値を提供するパラメーターのクエリを作成するには、次のような Transact-SQL ステートメントを使用できます。
SELECT DISTINCT Subcategory FROM <table> WHERE (Category = @Category)
WHERE 句の Category は <table> のフィールドの名前であり、@Category はクエリ パラメーターです。 このステートメントを使用すると、@Category に指定したカテゴリのサブカテゴリの一覧が生成されます。 この値は実行時に、ユーザーが同名のレポート パラメーターに選択した値を使用して入力されます。
[OK] をクリックします。
次に、このデータセットを使用する 2 番目のパラメーターのプロパティを設定して、実行時に使用可能な値を入力します。
レポート パラメーターに使用可能な値を設定するには
レポート データ ペインでパラメーター フォルダーの最初のパラメーターを右クリックし、[パラメーターのプロパティ] をクリックします。
[名前] ボックスのパラメーターの名前が正しいことを確認します。
[使用できる値] をクリックします。
[クエリから値を取得] をクリックします。
[データセット] ボックスのドロップダウン リストから、前の手順で作成したデータセットの名前をクリックします。
[値] フィールドで、パラメーター値を指定するフィールドの名前をクリックします。
[ラベル] フィールドで、パラメーターのラベルを指定するフィールドの名前をクリックします。
[OK] をクリックします。
カスケード型パラメーターをテストするには
[実行] をクリックします。
最初の独立したパラメーターのドロップダウン リストから値を選択します。
レポート プロセッサによって、次のパラメーターのデータセット クエリが実行され、最初のパラメーターに選択した値が渡されます。 最初のパラメーターの値に基づいて、使用可能な値を使用して 2 番目のパラメーターのドロップダウン リストが入力されます。
2 番目の従属パラメーターのドロップダウン リストから値を選択します。
選択肢を変更できるように、最後のパラメーターを選択した後、レポートは自動的に実行されません。
[レポートの表示] をクリックします。 選択したパラメーターに基づいて、レポートの表示が更新されます。
関連項目
タスク
レポート パラメーターの追加、変更、または削除 (レポート ビルダーおよび SSRS)
チュートリアル: レポートへのパラメーターの追加 (レポート ビルダー)
Add a multi-value parameter to a Report
概念
レポート パラメーター (レポート ビルダーおよび SSRS)
データセット フィルター、データ領域フィルター、およびグループ フィルターの追加 (レポート ビルダー)
レポート埋め込みデータセットと共有データセット (レポート ビルダーおよび SSRS)