式での組み込みコレクションの使用 (レポート ビルダー 3.0 および SSRS)
レポート内の式には、ReportItems、Parameters、Fields、DataSets、DataSources、Variables などの組み込みコレクションへの参照とレポート名などのグローバル情報の組み込みフィールドへの参照を含めることができます。[式] ダイアログ ボックスにすべてのコレクションが表示されるとは限りません。DataSets コレクションと DataSources コレクションを使用できるのは、レポート サーバー上でパブリッシュされたレポートの実行時のみです。ReportItems コレクションは、ページまたはページ ヘッダーのテキスト ボックスなど、レポート領域内のテキスト ボックスのコレクションです。
詳細については、「式 (レポート ビルダー 3.0 および SSRS)」を参照してください。
注 |
---|
レポート定義 (.rdl) は、Business Intelligence Development Studio のレポート ビルダー 3.0 およびレポート デザイナーで作成および変更できます。これらの作成環境では、レポートおよび関連アイテムの作成方法、開く方法、および保存方法が異なります。詳細については、microsoft.com Web サイトの「レポート デザイナーとレポート ビルダー 3.0 でのレポートのデザイン (SSRS)」を参照してください。 |
組み込みコレクションについて
次の表に、式を作成する際に使用できる組み込みコレクションを挙げます。各行に、プログラム上のコレクション名 (大文字と小文字は区別されます)、[式] ダイアログ ボックスを使用してコレクションへの参照を対話的に追加できるかどうか、使用例、および説明 (コレクションの値がいつ初期化され使用できるようになるかなど) を示します。
組み込みコレクション |
[式] ダイアログ ボックスのカテゴリ |
使用例 |
説明 |
---|---|---|---|
Globals |
組み込みフィールド |
=Globals.ReportName - or - =Globals.PageNumber |
レポート名またはページ番号など、レポートで役立つグローバル変数を表します。常に使用可能です。 詳細については、「組み込み Globals および Users 参照の使用 (レポート ビルダー 3.0 および SSRS)」を参照してください。 |
User |
組み込みフィールド |
=User.UserID または =User.Language |
言語設定やユーザー ID など、レポートを実行しているユーザーに関するデータのコレクションを表します。常に使用可能です。 詳細については、「組み込み Globals および Users 参照の使用 (レポート ビルダー 3.0 および SSRS)」を参照してください。 |
Parameters |
パラメーター |
=Parameters("ReportMonth").Value または =Parameters!ReportYear.Value |
レポート パラメーターのコレクションを表します。各パラメーターには単一の値または複数の値を指定できます。初期化処理が完了するまで使用できません。詳細については、「Parameters コレクションの参照の使用 (レポート ビルダー 3.0 および SSRS)」を参照してください。 |
Fields(<Dataset>) |
フィールド |
=Fields!Sales.Value |
レポートで使用可能なデータセットのフィールドのコレクションを表します。データをデータ ソースからデータセットに取得した後で使用可能です。詳細については、「データセット フィールド コレクションの参照の使用 (レポート ビルダー 3.0 および SSRS)」を参照してください。 |
DataSets |
表示されません |
=DataSets("TopEmployees").CommandText |
レポート定義の本文から参照されるデータセットのコレクションを表します。ページ ヘッダーまたはページ フッターでのみ使用されるデータ ソースは含まれません。ローカル プレビューでは使用できません。詳細については、「DataSources コレクションと DataSets コレクションの参照の使用 (レポート ビルダー 3.0 および SSRS)」を参照してください。 |
DataSources |
表示されません |
=DataSources("AdventureWorks").Type |
レポートの本文内から参照されるデータ ソースのコレクションを表します。ページ ヘッダーまたはページ フッターでのみ使用されるデータ ソースは含まれません。ローカル プレビューでは使用できません。詳細については、「DataSources コレクションと DataSets コレクションの参照の使用 (レポート ビルダー 3.0 および SSRS)」を参照してください。 |
Variables |
Variables |
=Variables!CustomTimeStamp.Value |
レポート変数とグループ変数のコレクションを表します。詳細については、「レポート変数コレクションとグループ変数コレクションの参照の使用 (レポート ビルダー 3.0 および SSRS)」を参照してください。 |
ReportItems |
表示されません |
=ReportItems("Textbox1").Value |
レポート アイテムのテキスト ボックスのコレクションを表します。このコレクションは、ページ ヘッダーまたはページ フッターに含めるためにページ上のアイテムをまとめる場合に使用できます。詳細については、「ReportItems コレクションの参照の使用 (レポート ビルダー 3.0 および SSRS)」を参照してください。 |
式でのコレクション構文の使用
式からコレクションを参照するには、コレクション内のアイテムに対して標準の Microsoft Visual Basic 構文を使用します。次の表に、コレクション構文の例を示します。
構文 |
使用例 |
---|---|
Collection!ObjectName.Property |
=Fields!Sales.Value |
Collection!ObjectName("Property") |
=Fields!Sales("Value") |
Collection("ObjectName").Property |
=Fields("Sales").Value |
Collection("Member") |
=User("Language") |
Collection.Member |
=User.Language |
カスタム アセンブリへの組み込みコレクションの引き渡し
組み込みコレクションをカスタム アセンブリ内に渡して処理したい場合は、コード プロジェクト内のアセンブリ参照を、組み込みコレクションを定義するアセンブリに追加し、正しい名前空間にアクセスする必要があります。開発しているカスタム アセンブリが、レポート サーバー上で実行されるレポート (サーバー レポート) 用のものなのか、それとも .NET アプリケーション内でローカルに実行されるレポート (ローカル レポート) 用のものなのかによって、参照する必要があるアセンブリは異なります。詳細については、以下を参照してください。
名前空間: Microsoft.ReportingServices.ReportProcessing.ReportObjectModel
アセンブリ (ローカル レポート): Microsoft.ReportingServices.ProcessingObjectModel.dll
アセンブリ (サーバー レポート): Microsoft.ReportViewer.ProcessingObjectModel.dll
Fields および ReportItems コレクションの内容は実行時に動的に変更されるので、カスタム アセンブリ内への呼び出し間でそれらを保持することは避けてください (たとえば、メンバー変数内など)。この推奨事項は、すべての組み込みコレクションについて共通に該当します。