次の方法で共有


レッスン 6 : パラメータを含むサブレポートの追加

新規 : 2006 年 7 月 17 日

メイン レポートにレポートを埋め込む方法として、サブレポートを使用する方法があります。同一ウィンドウに別のレポートを表示するドリルスルー レポートとは異なり、サブレポートは、メイン レポートに埋め込まれたレポート アイテムとして表示されます。どのようなレポートでもサブレポートとして使用できますが、通常はメイン レポート内で見やすくなるように、サブレポートとしての書式を設定する必要があります。

このレッスンでは、Resellers Worldwide レポートにサブレポートとして ContactInformation レポートを追加します。ここでは、メイン レポート内のテーブルにサブレポートを追加して、そのプロパティを設定する方法を学習します。メイン レポートパラメータをサブレポート パラメータにバインドする方法も説明します。

Advanced Parmeters Tutorial レポート サーバー プロジェクトを開くには

  1. SQL Server Business Intelligence Development Studio で、Advanced Parameters Tutorial レポート サーバー プロジェクトをまだ開いてなければ開きます。

  2. ソリューション エクスプローラで、Resellers Worldwide レポートをダブルクリックします。レポートが [レイアウト] ビューに表示されます。

次の手順では、このメイン レポートに複数値パラメータ ContactDisplayFields を追加します。これには、サブレポートのパラメータ プロパティを設定するときに、メイン レポートの複数値パラメータ ContactDisplayFields をサブレポートの複数値パラメータ FieldsToDisplay にバイントします。

複数値パラメータ ContactDisplayFields を追加するには

  1. [レイアウト] ビューで、デザイン画面をクリックします。[レポート] メニューと [書式] メニューが表示されます。

  2. [レポート] メニューの [レポート パラメータ] をクリックします。[レポート パラメータ] ダイアログ ボックスが表示されます。

  3. [追加] をクリックします。新しいパラメータが既定値で生成されます。

  4. [プロパティ] セクションの [名前] ボックスに「ContactDisplayFields」と入力し、データ型が String であることを確認します。

  5. [表示名] ボックスに、「サブレポートに表示する情報 : 」と入力します。

  6. [空白の値を許可] チェック ボックスをオンにします。

  7. [複数値] チェック ボックスをオンにします。

  8. [使用できる値] セクションで、[クエリなし] が選択されていることを確認し、次の表を参照して可能な値を設定します。

    [ラベル] [値]

    Phone

    Phone

    Email

    EmailAddress

    None

    <空白>

  9. [既定値] セクションで、[クエリなし] を選択し、[値] ボックスに「EmailAddress」と入力します。

  10. [OK] をクリックします。

  11. [プレビュー] をクリックします。

可能な値の一覧を設定したので、ContactDisplayFields パラメータの一覧には [すべて選択] が自動的に追加されています。

次の手順では、複数値をとる Colors というパラメータを追加します。このチュートリアルでは、この Colors パラメータに 2 つの値を設定し、サブレポートのパラメータ プロパティを設定するときに、この複数値パラメータから単一値をサブレポート パラメータ BackgroundColor および FontColor にそれぞれバインドします。

複数値パラメータ Colors を追加するには

  1. [レイアウト] ビューで、[レポート] メニューの [レポート パラメータ] をクリックします。[レポート パラメータ] ダイアログ ボックスが表示されます。

  2. [追加] をクリックします。新しいパラメータが既定値で生成されます。

  3. [プロパティ] セクションの [名前] ボックスに「Colors」と入力し、データ型が String であることを確認します。

  4. 既存の表示名を「背景色およびフォントの色の選択 : 」というテキストに置き換えます。

  5. [複数値] チェック ボックスをオンにします。

  6. [空白の値を許可] チェック ボックスをオフにします。

  7. [使用できる値] セクションで、[クエリなし] が選択されていることを確認します。値テーブルは空のままにしておきます。

  8. [既定値] セクションで、[クエリなし] を選択し、[値] ボックスに値「#C9DEF6」および「SlateBlue」を入力します。

    このパラメータには 2 つの値を設定する必要があります。配列中 1 番目の値は背景色としてサブレポートに渡され、2 番目の値はフォントの色としてサブレポートに渡されます。

    この例では、背景色の値は 16 進数 RGB カラー コード #C9DEF6 で、フォントの色は Web カラーの SlateBlue です。

  9. [OK] をクリックします。

  10. [プレビュー] をクリックします。

    Colors パラメータには可能な値のセットが定義されていないので、一覧に [すべて選択] は表示されません。

次の手順では、テーブル内にサブレポート アイテムを追加するための場所を用意します。まず、テーブルのグループ ヘッダーにもう 1 行を追加し、列を結合して行にテキスト ボックスが 2 つだけになるようにします。一方の幅は、サブレポートを表示できる十分な幅にします。次に、ヘッダー行の表示が ShowSalesDetails パラメータの値に基づいて切り替わるように設定します。たとえばこのパラメータが True のとき、この連絡先情報の詳細行が表示されるようにします。

テーブル グループ ヘッダーに行を追加し、テキスト ボックスを結合するには

  1. テーブル内をクリックします。テーブル ハンドルが表示されます。

  2. グループ ヘッダー行を右クリックします。このテキスト ボックスの内容は =Fields!Store.Value から始まっています。[下に行を挿入] をクリックすると、2 行目のヘッダー行が表示されます。

  3. 行を選択した状態で、レポート ツール バーのフォント サイズ一覧から [8] を選択します。

    サブレポート周囲の余白をできるだけなくすため、サブレポートを表示する行をできるだけ小さくします。サブレポートのレポート アイテムは必要に応じて拡大しますが、収縮はしません。

  4. 列 2、3、4 のテキスト ボックスを選択し、右クリックして [セルの結合] をクリックします。これで新しいヘッダー行に 2 つのテキスト ボックスが設定されます。

  5. 新しいテーブル行を選択した状態で、[プロパティ] ウィンドウの Visibility までスクロールし、ノードを展開します。Hidden=Not Parameters!ShowSalesDetails.Value に設定します。

メイン レポートにサブレポートを追加するには

  1. ソリューション エクスプローラで、ContactInformation.rdl レポートをクリックし、ヘッダー行の 2 番目のテキスト ボックス (Contact Information ボックスの横) にドラッグします。

  2. グレー表示になっているサブレポート領域を右クリックし、[プロパティ] を選択します。[サブレポート プロパティ] ダイアログ ボックスが表示されます。

  3. [パラメータ] タブをクリックし、[パラメータ名] の 1 番目のテキスト ボックスをクリックします。ContactInformation に定義した 4 つのパラメータを含む一覧が表示されるので、次の表を参照して、サブレポート パラメータを設定します。

    [パラメータ名] [パラメータ値]

    ContactID

    =Fields!StoreContactID.Value

    FieldsToDisplay

    =Parameters!ContactDisplayFields.Value

    BackgroundColor

    =Parameters!Colors.Value(0)

    FontColors

    =Parameters!Colors.Value(1)

  4. [OK] をクリックします。

  5. 新しいグループ ヘッダー行の行ハンドルをクリックし、[プロパティ] ウィンドウを Height までスクロールして、値を [0.01]、または行の高さに設定可能な最小値に設定し、余白ができないようにします。

  6. メイン レポート内の、サブレポートのレポート アイテムに対する Height プロパティによって、高さの最小値が設定されます。サブレポートのレポート アイテムは、バインドされるレポートに合わせて拡大します。

  7. グレー表示されているサブレポート領域をクリックし、[プロパティ] ウィンドウの Width までスクロールして、値を 3 またはサブレポート定義の幅に応じた幅に設定します。

    余白をなくすには、サブレポート要素の幅を、サブレポート定義で定義したサブレポートの幅以下に設定します。サブレポートは必要に応じてメイン レポート内で拡大しますが、収縮はしません。

  8. レポートをプレビューします。FieldsToDisplay にさまざまな値を選択して、選択内容がサブレポートに表示されることを確認します。

    全部で 8 つのパラメータが定義されているので、レポート ツール バーは多少混み合っています。プレビュー モードでツール バーを非表示にするには、レポート ツール バー上の [パラメータ エリアの表示/非表示の切り替え] ボタンをクリックします。

次の手順では、Colors パラメータを内部パラメータとして設定します。内部パラメータは、レポート内部の変数として使用するものであり、レポート ツール バーやその他の方法で値を設定することはできません。

レポート パラメータを内部パラメータとして設定するには

  1. [レポート] メニューの [レポート パラメータ] をクリックします。[レポート パラメータ] ダイアログ ボックスが表示されます。

  2. [パラメータ] ボックスの一覧で、[Colors] を選択します。

  3. [プロパティ] セクションで、[内部] チェック ボックスをオンにします。

    パラメータ値を [内部] に設定すると、このパラメータはレポート定義内だけのものになります。サーバーにレポートをパブリッシュすると、レポート サーバーからこのパラメータを操作することはできません。レポート ツール バーにはこのパラメータの表示名は表示されず、また、このレポートをサブレポートとして使用する場合、このパラメータはメイン レポートのサブレポート パラメータ一覧にも表示されません。

  4. [OK] をクリックします。

  5. (省略可) [プレビュー] をクリックします。ツール バーには、Colors パラメータの表示名は表示されません。

レッスン 8 では、レポートをレポート サーバーにパブリッシュした後、Resellers Worldwide レポートの多くのパラメータを非表示にして、外観をすっきりさせます。

次の手順

このレッスンでは、テーブル グループ ヘッダーに行を追加してセルを結合し、パラメータを含むサブレポートをセルに追加した後、レポート パラメータ ShowSalesDetails の値に基づいてこの行の表示を設定しました。次のレッスンでは、既存の AdventureWorks サンプル レポート "Territory Sales Drilldown" にパラメータを追加します。「レッスン 7 : ドリルスルー レポートの作成」を参照してください。

参照

その他の技術情報

Reporting Services でのパラメータを使用した作業
レポート アイテムを使用した作業

ヘルプおよび情報

SQL Server 2005 の参考資料の入手