SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

ComponentZine(ComponentOne)

Accessのデータベースを帳票化する

PowerTools True WinReports for .NETの帳票作成機能を使う

  • X ポスト
  • このエントリーをはてなブックマークに追加

フォームの初期化処理の作成

 コードの先頭で、importsまたはusingを使い、C1.Win.C1Reportへの参照を設定します。そして、フォームのLoadイベントハンドラでComboBoxのTextプロパティを設定します。

Visual Basic
Imports C1.Win.C1Report

Private Sub Form1_Load(ByVal sender As System.Object, _
                  ByVal e As System.EventArgs) Handles MyBase.Load
    Me.ComboBox1.SelectedIndex = 0
End Sub
C#
using C1.Win.C1Report;

private void Form1_Load(object sender, EventArgs e)
{
    ComboBox1.SelectedIndex = 0;
}

C1Report1の設定

 最初に、C1Reportコンポーネント「C1Report1」に、サンプルデータベースのテーブルからデータを取り出して表示する、単純な一覧表を作成する処理を組み込みます。

使用するデータベース

 サンプルで使用するデータベースは、テーブルが1つの簡単なデータベースです。データを抽出するクエリは、C1Reportの設定で行いますので、データベースには作成していません。

 テーブルは4つのフィールドからなり、それぞれ「ID」「メーカー」「製品名」「カラー」にデータが順不同で入力されています。

一覧表の作成

 C1Report1コンポーネントを使って一覧表を作成するには、ウィザードを使う方法とデザイナを使用して作成する方法がありますが、最初はウィザードを使って作成してみましょう。

1.レポートの編集

 C1Report1をクリックし、タスクメニューから「レポートの編集」を選びます。

「レポートの編集」を選ぶ
「レポートの編集」を選ぶ

 「レポート新規作成ウィザード」が開きますので、「接続文字列」の[...]ボタンを押します。

 すると、データベースへの接続を設定するおなじみの画面が出てきますので、[プロバイダ]から「Microsoft Jet4.0 OLE DB Provider」を選びます。データベース名に「guiter.mdb」を指定し[接続のテスト]で接続できることを確認します。

guiter.mdbを指定し接続を確認する
guiter.mdbを指定し接続を確認する

2.SQL構文の構築

 ウィザードに戻り「SQL構文」にチェックが入っているのを確認し、ツールバーの[SQL構文の構築]ボタンを押します。

 「SQLビルダ」が起動するので、テーブルを展開し、フィールドをダブルクリックして抽出するデータのあるフィールドを指定します。

SQLビルダで抽出するフィールドを指定する
SQLビルダで抽出するフィールドを指定する

3.レポートに表示するフィールドの指定する

 ウィザードを進め、レポートに表示するフィールドを指定します。なお、一覧表はこのフィールドを並べた順番で作成されるので、列の指定順序に注意してください。

レポートに表示するフィールドを指定
レポートに表示するフィールドを指定

4.レイアウトの決定

 [レイアウト]で「表形式」を選び、そのままOKボタンを押してウィザードを進め、最後にレポート名を「製品一覧レポート」に変更して[完了]ボタンを押します。

5.プレビュー

 作成した一覧表のプレビューが表示されるので、内容を確認してウィンドウを閉じます。

レポートのプレビュー
レポートのプレビュー

6.イベントハンドラの設定

 VSに戻り、ボタン「標準一覧表」のClickイベントハンドラに、作成した一覧表をC1PrintPreviewControlコンポーネントで表示する処理を作成します。

 C1ReportコンポーネントのDocumentプロパティの値を、C1PrintPreviewControlのDocumentプロパティに代入し、C1PrintPreviewControlのInvalidateメソッドを実行して表示を更新するようにすれば完成です。

Visual Basic
Private Sub Button1_Click(ByVal sender As System.Object, _
             ByVal e As System.EventArgs) Handles Button1.Click
    Me.C1PrintPreviewControl1.Document = Me.C1Report1.Document
    Me.C1PrintPreviewControl1.Invalidate()
End Sub
C#
private void Button1_Click(object sender, EventArgs e)
{
    c1PrintPreviewControl1.Document = C1Report1.Document;
    c1PrintPreviewControl1.Invalidate();
}

次のページ
グループ化した帳票の作成

この記事は参考になりましたか?

  • X ポスト
  • このエントリーをはてなブックマークに追加
ComponentZine(ComponentOne)連載記事一覧

もっと読む

この記事の著者

瀬戸 遥(セト ハルカ)

8ビットコンピュータの時代からBASICを使い、C言語を独習で学びWindows 3.1のフリーソフトを作成、NiftyServeのフォーラムなどで配布。Excel VBAとVisual Basic関連の解説書を中心に現在まで40冊以上の書籍を出版。近著に、「ExcelユーザーのためのAccess再...

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • X ポスト
  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/1700 2008/06/24 15:08

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング