レポートへのページ ヘッダーおよびページ フッターの追加

レポートには、各ページの上部と下部にそれぞれ配置されるヘッダーとフッターを使用できます。ヘッダーおよびフッターには、静的なテキスト、画像、線、四角形、罫線、背景色、および背景画像を含めることができます。データバインドされたフィールドまたは画像を、ヘッダーやフッターに直接追加することはできません。ただし、ヘッダーまたはフッターで使用する必要のあるデータバインドされたフィールドまたは画像を間接的に参照する式を記述することはできます。

ms159677.note(ja-jp,SQL.90).gifメモ :
表示拡張機能の種類によって、ページの処理方法が異なります。レポートのページ割り当ておよび表示拡張機能の詳細については、「レポートのページ割り当ての制御」を参照してください。
ms159677.note(ja-jp,SQL.90).gifメモ :
SQL Server 2005 または SQL Server 2005 Service Pack 1 で Reporting Services を実行している場合、ヘッダー/フッターでのブックマーク リンクやドリルスルー アクションはサポートされません。

レポート ヘッダーおよびレポート フッターは、テーブルやグループのヘッダーおよびフッターと同じではありません。テーブル ヘッダーおよびテーブル フッターの詳細については、「テーブル データ領域の処理」を参照してください。

先頭ページでのヘッダーおよびフッターの非表示

レポート デザイナでは、ページ ヘッダーとページ フッターは、既定でレポートの最初と最後のページに表示されます。レポートの最初と最後のページに、ページ ヘッダーとページ フッターが表示されないようにすることもできます。この設定を変更するには、ヘッダーまたはフッターの PrintOnFirstPage プロパティまたは PrintOnLastPage プロパティを変更します。詳細については、「最初と最後のページでページのヘッダーまたはフッターを非表示にする方法 (レポート デザイナ)」を参照してください。

ページ ヘッダーまたはページ フッターへの変数データの表示

ページ ヘッダーおよびページ フッターには静的なコンテンツを含めることもできますが、一般的にはページ番号やページのコンテンツに関する情報などの動的なコンテンツを表示します。ページごとに異なる変数データを表示するには、式を記述する必要があります。ヘッダーまたはフッターに変数データを配置するには、次の操作を行います。

  • ヘッダーまたはフッターにテキスト ボックスを追加します。
  • テキスト ボックスに、表示する変数データを生成する式を記述します。
  • その式に、ページ上のレポート アイテムへの参照を含めます (たとえば、特定のフィールドからのデータを格納するテキスト ボックスを参照することができます)。データセット内のフィールドへの直接参照を含めることはできません。

ページ ヘッダーまたはページ フッターで、テキスト ボックスのフィールドを直接参照することはできません (たとえば、式 =Fields!LastName.Value を使用することはできません)。

ページ ヘッダーまたはページ フッターにフィールド情報を表示するには、レポート本文内のテキスト ボックスにフィールド式を配置し、そのテキスト ボックスをページ ヘッダーまたはページ フッターで参照します。次に示す式は、TXT_LastName というテキスト ボックスの最初のインスタンスの内容を表示します。

=First(ReportItems!TXT_LastName.Value)

ページ ヘッダーまたはページ フッターでは、フィールドに関する集計関数は使用できません。レポート アイテムに関する集計関数だけを使用することができます (たとえば、上に示した First() 関数がこれに該当します)。ページ ヘッダーおよびページ フッター内で使用できる一般的な式の詳細については、「Reporting Services の式の例」を参照してください。

このトピックの以下のセクションでは、ヘッダーおよびフッターで一般的に使用される変数データを取得するための、すぐに使用できる式を示します。また、Excel 表示拡張機能でヘッダーおよびフッターが処理される方法についても説明します。式の詳細については、「Reporting Services での式の使用」を参照してください。

ヘッダーまたはフッターへのページ番号の追加

一般に、フッターにはページ番号を表示します。レポートのヘッダーまたはフッターにページ番号を表示するには、フッターにテキスト ボックスを作成し、次の式を追加します。

=Globals.PageNumber & " of " & Globals.TotalPages

ヘッダーまたはフッターへのレポート名、パス、およびレポート実行時間の追加

レポート サーバー データベースに格納されているレポート タイトルまたはレポート名と、そのレポートがいつ生成されたかに関するタイムスタンプ情報を表示するには、次の式を使用します。

=ReportItems!ReportTitle.Value
=Globals.ReportName & ", dated " & Format(Globals.ExecutionTime, "d")

ヘッダーまたはフッターへのデータバインドされた画像の追加

ヘッダーまたはフッターで、データベースに格納された画像データを使用できます。ただし、画像コントロールからデータベース フィールドを直接参照することはできません。その代わりに、レポートの本文にテキスト ボックスを追加し、そのテキスト ボックスを画像が格納されているデータ フィールドに設定します (値は base64 でエンコードされている必要があります)。base64 でエンコードされた画像が表示されることを回避するために、レポートの本文でテキスト ボックスを非表示にすることができます。次に、ページ ヘッダーまたはページ フッターの画像コントロールから、非表示のテキスト ボックスの値を参照します。

たとえば、製品情報のページから成るレポートがあるとします。各ページのヘッダーには、製品の写真を表示します。保存されている画像をレポート ヘッダーに出力するには、データベースから画像を取得する、TXT_Photo という非表示のテキスト ボックスをレポートの本文に定義し、次の式を使用してそのボックスに値を渡します。

=Convert.ToBase64String(Fields!Photo.Value)

ヘッダーには、TXT_Photo テキスト ボックスを使用する画像コントロールを追加し、デコードして画像を表示します。

=Convert.FromBase64String(ReportItems!TXT_Photo.Value)

ヘッダーまたはフッターへの集計された合計ページ数の追加

レポートの種類によっては、各レポートのヘッダーまたはフッターに集計値 (たとえば、ページに数値が含まれている場合には、ページごとの合計) を含めると便利です。フィールドを直接参照することはできないので、ヘッダーまたはフッターに配置する式は、次の例のように、データ フィールドではなく、レポート アイテム (たとえばテキスト ボックス) の名前を参照する必要があります。

=Sum(ReportItems!Textbox1.Value)

繰り返されるデータ行を含んだテーブルまたは一覧内にテキスト ボックスがある場合、実行時にヘッダーまたはフッターに表示される値は、現在のページのテーブルまたは一覧のすべての TextBox1 インスタンス データのすべての値の合計になります。

ページ合計を計算する場合、異なる表示拡張機能を使用してレポートを表示すると、合計に相違が生じる可能性があります。ページ割り当てされた出力は、表示拡張機能の種類によって、異なった方法で計算されます。HTML で表示したページと同じページを PDF で表示した場合、PDF ページ上のデータ量が異なると、表示される合計も異なる可能性があります。

ヘッダーおよびフッターを使用したテキストの配置

ヘッダーおよびフッターを使用して、ページ上にテキストを配置できます。たとえば、顧客に郵送するレポートを作成しているとします。顧客の住所をヘッダーまたはフッターを使用して配置することで、レポートを折りたたんだ時に、その住所が封筒の窓から見えるようにすることができます。

テキスト ボックスを使用してヘッダーまたはフッターのみに値を設定する場合は、レポートの本文でそのテキスト ボックスを非表示にすることができます。レポートの本文にテキスト ボックスを配置すると、ヘッダーやフッターに表示する値が、レポートの最初と最後のどちらのページに表示されるかに影響する可能性があります。たとえば、レポートが単一ページに収まらないテーブル、マトリックス、または一覧がある場合、非表示のテキスト ボックスの値は最後のページに表示されます。最初のページに表示する必要がある場合は、非表示のテキスト ボックスをレポート本文の先頭に配置します。

Excel でのページ ヘッダーおよびページ フッターの使用

Excel の表示拡張機能を対象とするレポートにページ ヘッダーおよびページ フッターを定義する場合は、次のガイドラインに従うことで、最も良い結果を得ることができます。

  • ページ フッターは、ページ番号を表示するために使用します。
  • ページ ヘッダーは、画像、タイトル、またはその他のテキストを表示するために使用します。ヘッダーには、ページ番号を配置しないようにします。

Excel では、ページ フッターのレイアウトに制限があります。ページ フッターに複雑なレポート アイテムを含むレポートを定義した場合、そのレポートを Excel で表示すると、ページ フッターの処理は期待どおりには行われません。

Excel の表示拡張機能は、ページ ヘッダー内の画像、および単純または複雑なレポート アイテムの絶対位置に対応しています。よりリッチなページ ヘッダー レイアウトをサポートする副作用として、ヘッダーでのページ番号の計算に制限が生じます。Excel の表示拡張機能では、既定の設定で、ページ番号がワークシートの数に基づいて計算されます。レポートの定義の仕方によっては、ページ番号に誤りが生じる可能性があります。たとえば、印刷すると 4 ページになる単一の大きなワークシートとして表示されるレポートがあるとします。ヘッダーにページ番号情報を含めると、印刷された各ページのヘッダーには、"Page 1 of 1" と表示されます。

より正確なページ数は、印刷されたページの寸法に相関する論理ページに基づいて計算されます。Excel のページ フッターでは、論理ページ番号が自動的に使用されます。ページ ヘッダーに論理ページ数を配置するには、単純なヘッダーを使用するようにデバイス情報設定を構成する必要があります。単純なヘッダーを使用する場合は、ヘッダー領域で複雑なレポート レイアウトを処理する機能を削除してください。デバイス情報設定の変更方法の詳細については、「Excel デバイス情報設定」を参照してください。

参照

処理手順

ページ ヘッダーまたはページ フッターを追加または削除する方法 (レポート デザイナ)
最初と最後のページでページのヘッダーまたはフッターを非表示にする方法 (レポート デザイナ)
レポートに画像を埋め込む方法 (レポート デザイナ)

概念

レポート レイアウトのデザイン
グラフィック要素の追加

ヘルプおよび情報

SQL Server 2005 の参考資料の入手