次の方法で共有


ReportItems コレクションの参照 (レポート ビルダーおよび SSRS)

組み込みコレクション ReportItems は、データ領域の行などのレポート アイテムのテキスト ボックスや、レポート デザイン画面上のテキスト ボックスのセットです。 ReportItems コレクションには、ページ ヘッダー、ページ フッター、またはレポート本文の現在のスコープにあるテキスト ボックスが含まれています。 このコレクションは、レポート プロセッサおよびレポート レンダラーによって実行時に決定されます。 ユーザーがレポートのページを表示する際には、レポート プロセッサによってレポート データとレポート アイテムのレイアウト要素が連続的に結合されますが、これに伴って現在のスコープが変化します。 組み込みコレクション ReportItems を使用すると、各ページの最初のアイテムと最後のアイテムを表示する辞書形式のページ ヘッダーを作成できます。

注意

SQL Server データ ツールのレポート ビルダーまたはレポート デザイナーを使用して、レポート定義 (.rdl) を作成および変更できます。これらの作成環境では、レポートおよび関連アイテムの作成方法、開く方法、および保存方法が異なります。詳細については、microsoft.com Web サイトの「レポート デザイナーおよびレポート ビルダーを使用したレポートのデザイン (SSRS)」を参照してください。

ReportItems の Value プロパティの使用

ReportItems コレクション内のアイテムに設定されるプロパティは、Value だけです。 ReportItems アイテムの値を使用すると、レポート内の別のフィールドのデータを表示または計算できます。 現在のテキスト ボックスの値にアクセスするには、Visual Basic に組み込まれたグローバルの Me.Value を使用するか、単なる Value を使用します。 First 関数や集計関数などのレポート関数では、完全修飾された構文を使用してください。

以下に例を示します。

  • テキスト ボックスで次の式を使用すると、Textbox1 という名前の ReportItem テキスト ボックスの値が表示されます。

    =ReportItems!Textbox1.Value

  • ReportItem テキスト ボックスの Color プロパティで次の式を使用すると、値が 0 より大きい場合は黒、それ以外の場合は赤でテキストが表示されます。

    =IIF(Me.Value > 0,"Black","Red")

  • ページ ヘッダーまたはページ フッターのテキスト ボックスで次の式を使用すると、表示レポートのページごとに、LastName という名前のテキスト ボックスの最初の値が表示されます。

    =First(ReportItems("LastName").Value)

辞書形式のページ ヘッダー式

そのページ上の最初の顧客と最後の顧客を表示するページ ヘッダーを作成することができます。 ページ ヘッダーのテキスト ボックスでは、式の中で組み込みコレクション ReportItems を 1 回しか参照できないため、最初の顧客名用 (=First(ReportItems!textboxLastName.Value) と最後の顧客名用 (=Last(ReportItems!textboxLastName.Value) に 2 つのテキスト ボックスをページ ヘッダーに追加する必要があります。

ページ ヘッダー セクションやページ フッター セクションでは、ReportItems コレクションのメンバーとして使用できるのは、現在のページのテキスト ボックスのみです。 たとえば、ReportItems!textboxLastName.Value が、複数ページにわたるデータ領域の最初のページにしか表示されないテキスト ボックスを参照している場合、最初のページでは値が表示されますが、その他すべてのページでは "#Error" と表示され、式が記述したとおりに評価できなかったことを示します。

ReportItems コレクションのスコープ

レポートが処理されると、レポート本文内またはデータ領域内の各テキスト ボックスは、そのデータセット、データ領域、およびグループの関連付けのコンテキストで評価されます。 ReportItems コレクションへの参照のスコープは、現在のスコープまたは現在のスコープより上位の場所です。

たとえば、親グループの行の中にあるテキスト ボックスには、子グループの行の中にあるテキスト ボックスの名前を参照する式を含めることができません。 このような式は、子行のテキスト ボックスがスコープ外にあるため、レポート内の値に解決されません。 詳細については、「集計関数リファレンス (レポート ビルダーおよび SSRS)」を参照してください。

関連項目

参照

式で使用される組み込みコレクション (レポート ビルダーおよび SSRS)

式の例 (レポート ビルダーおよび SSRS)

概念

Reporting Services の改ページ (レポート ビルダーおよび SSRS)

データのフィルター、グループ化、および並べ替え (レポート ビルダーおよび SSRS)