ActiveReports for .NET 18.0J
ページテンプレートの適用(レターヘッド)
ActiveReportsユーザーガイド > サンプルとチュートリアル > チュートリアル > セクションレポートのチュートリアル > レイアウト > ページテンプレートの適用(レターヘッド)

ActiveReportsでは、Overlayメソッドを使用することにより、既存のレポートにページテンプレートを適用できます。このチュートリアルでは、静的なレターヘッドレポートを使用し、ActiveReportのOverlayメソッドの使用方法を紹介します。

このトピックでは、以下のタスクを行います。

メモ: このチュートリアル、Northwindデータベース(Nwind.mdb)のファイルを使用しています。Northwindデータベース(..ActiveReportsNET18\Samples\Data\Nwind.mdb)へのアクセス権限が必要です。

チュートリアルを完了すると、次のレポートが作成されます。

デザイン時のレイアウト (rptLetterhead)

デザイン時のレイアウト (rptData)

実行時のレイアウト

VisualStudioプロジェクトにActiveReportを追加する

  1. Visual Studioで新規プロジェクトを開きます。
  2. [プロジェクト]メニューから [新しい項目の追加]を選択します。
  3. [新しい項目を追加]ダイアログから[ActiveReports 18.0 セクションレポート(コード)]を選択し、ファイルの名前を「rptLetterhead」に変更します。
  4. [追加]ボタンをクリックします。
  5. [プロジェクト]メニューから [新しい項目の追加]を選択します。
  6. [新しい項目を追加]ダイアログから[ActiveReports 18.0 セクションレポート(コード)]を選択し、ファイルの名前を「rptData」に変更します。
  7. [追加]ボタンをクリックします。

詳細は、「クイックスタート」を参照してください。

rptDataをデータソースに接続する

  1. detailセクションのバンドから、データソースアイコンをクリックします。
  2. [レポートデータソース]ダイアログで、[OLE DB]タブの接続文字列の横にあるに[作成]ボタンをクリックします。
  3. [データリンクプロパティ]ウィンドウで、[Microsoft Jet 4.0 OLE DB Provider]を選択し、[次へ]ボタンをクリックし、[接続]タブへ移動します。
  4. (...)をクリックし、Nwind.mdbへのアクセスパスを参照します。アクセスパスを選択したら、[開く]をクリックします。
  5. [接続のテスト]ボタンをクリックし、データベースとの接続を確認します。
  6. [OK] をクリックし、[データリンクプロパティ]ウィンドウに戻ります。接続文字列が自動的に表示されることを確認します。
  7. [OLE DB] タブの[クエリ]フィールドに以下のSQLクエリを入力します。
    SQL Query
    コードのコピー
    SELECT * FROM Customers ORDER BY Country
  8. [OK] をクリックします。

rptDataのレイアウトを作成する

  1. [pageHeader]セクションを選択し、[プロパティ]ウィンドウからHeightプロパティを「0.65」に設定します (テンプレートのページヘッダーの高さと同じです)。
  2. 「デザイナ面」のグレーの領域を選択し、[プロパティ]ウィンドウからPrintWidthプロパティを「6.5」に設定します。
  3. レポートのデザイナ面を右クリックし、[挿入] > [グループヘッダ/フッタ]を選択し、グループヘッダ/フッタを追加します。
  4. [GroupHeader]セクションを選択し、[プロパティ]ウィンドウから以下のプロパティを設定します。
    プロパティ名 プロパティの値
    Name ghCustomers
    BackColor MediumSlateBlue
    CanShrink True
    DataField Country
    GroupKeepTogether FirstDetail
    KeepTogether True
  5. ツールボックスから、[ghCustomers]上に以下のコントロールをドラッグし、[プロパティ]ウィンドウから以下のプロパティを設定します。

    TextBox1

        
    プロパティ名 プロパティの値
    DataField =Country + "の顧客"
    (DataField)
    Size 2, 0.2 in
    Location 0, 0 in
    Font Bold True
    ForeColor White
    Font Size 12

    Label1

        
    プロパティ名 プロパティの値
    Text 顧客番号
    Size 0.9, 0.2 in
    Location 0, 0.2 in
    Font Bold True
    ForeColor DarkSlateBlue

    Label2

        
    プロパティ名 プロパティの値
    Text 会社名
    Size 1, 0.2 in
    Location 1, 0.2 in
    Font Bold True
    ForeColor DarkSlateBlue

    Label3

        
    プロパティ名 プロパティの値
    Text 住所
    Size 1, 0.2 in
    Location 2.7, 0.2 in
    Font Bold True
    ForeColor DarkSlateBlue

    Label4

        
    プロパティ名 プロパティの値
    Text 市区町村
    Size 1, 0.2 in
    Location 5.5, 0.2 in
    Font Bold True
    ForeColor DarkSlateBlue
  6. Detailセクションをクリックし、[プロパティ]ウィンドウから、以下のようにプロパティを設定します。
    プロパティ名 プロパティの値
    BackColor LightGray
    CanShrink True
  7. ツールボックスから、Detailセクションに以下のコントロールをドラッグし、各コントロールのプロパティを以下のように変更します。

    TextBox1

        
    プロパティ名 プロパティの値
    DataField CustomerID
    Size 0.9, 0.2 in
    Location 0, 0 in

    TextBox2

        
    プロパティ名 プロパティの値
    DataField CompanyName
    Size 1.7, 0.2 in
    Location 1, 0 in

    TextBox3

        
    プロパティ名 プロパティの値
    DataField Address
    Size 2.8, 0.2 in
    Location 2.7, 0 in

    TextBox4

        
    プロパティ名 プロパティの値
    DataField City
    Size 1, 0.2 in
    Location 5.5, 0.2 in
  8. [GroupFooter]セクションを選択し、[プロパティ]ウィンドウからHeightプロパティを「0」に設定します。

rptLetterheadのレイアウトの作成する

  1. 「デザイナ面」のグレーの領域を選択し、[プロパティ]ウィンドウからPrintWidthプロパティを「6.5」に設定します。
  2. [PageHeader]セクションを選択し、[プロパティ]ウィンドウから以下のプロパティを設定します。
    プロパティ名 プロパティの値
    BackColor DarkSlateBlue
    Height 0.65
  3. ツールボックスから[PageHeader]セクション上に以下のコントロールをドラッグし、[プロパティ]ウィンドから以下のプロパティを設定します。

    Label1

        
    プロパティ名 プロパティの値
    Size 6.5, 0.65 in
    Location 0, 0 in
    Font Size 36
    Font Bold True
    ForeColor White
    Text GrapeCity
  4. [PageFooter]セクションを選択し、[プロパティ]ウィンドウからBackColorプロパティを「DarkSlateBlue」に設定します。
  5. ツールボックスから[PageFooter]セクション上に「Label」コントロールをドラッグし、[プロパティ]ウィンドウから以下のプロパティを設定します。
    プロパティ名 プロパティの値
    Size 6.5, 0.2 in
    Location 0, 0 in
    Alignment Center
    Font Bold True
    ForeColor White
    Text (022) 777-8210, http://www.grapecity.com/jp/, sales@grapecity.com

コードを使用してrptDataとrptLetterheadのデータを重ね合わせる

Visual Basic

  • WindowsフォームにActiveReportsの[Viewer]コントロールを追加します。Windowsフォームのタイトルバーをダブルクリックし、Form_Loadイベントのイベント処理メソッドを作成します。ハンドラにコードを追加し、以下の処理を行います。
    • rptDataレポートドキュメントをViewerに設定する
    • rptDataにrptLetterheadを重ね合わせる
Visual Basicコード(Form Loadイベント内に貼り付けます)
コードのコピー
   Dim rpt As New rptData()
   rpt.Run()     
   Dim rpt2 As New rptLetterhead()
   rpt2.Run()
   Dim i As Integer
   For i = 0 To rpt.Document.Pages.Count - 1
      rpt.Document.Pages(i).Overlay(rpt2.Document.Pages(0))
   Next
   Viewer1.Document = rpt.Document

C#

  • WindowsフォームにActiveReportsの[Viewer]コントロールを追加します。Windowsフォームのタイトルバーをダブルクリックし、Form_Loadイベントのイベント処理メソッドを作成します。ハンドラにコードを追加し、以下の処理を行います。
    • rptDataレポートドキュメントをViewerに設定する
    • rptDataにrptLetterheadを重ね合わせる
C#コード(Form Loadイベント内に貼り付けます)
コードのコピー
   rptData rpt = new rptData();
   rpt.Run();
   rptLetterhead rpt2 = new rptLetterhead();
   rpt2.Run();
   for(int i = 0; i < rpt.Document.Pages.Count; i++)
   {
      rpt.Document.Pages[i].Overlay(rpt2.Document.Pages[0]);
   }
   viewer1.Document = rpt.Document;

レポートを表示する