概要
FastReportは、.NET8 / .NET Core / .NET Framework 4.x に対応したレポートジェネレータです。MVC、WinForms、Web APIなど、さまざまなアプリケーションで利用できます。
この記事では、.NET Coreフレームワーク上のWinFormsアプリケーションでFastReportを使用する方法を見ていきます。
FastReport Designerの概要
以下はFastReport Designerの画面です。
- 左側: レポートの各バンド(領域)で操作できるコンポーネントのリストです。
- 右側: データソースのツリーが表示されます。レポートのデータソースは、右側の「Actions」コマンドから追加します。
レポートの設計が完了したら、拡張子 .frx でファイルを保存します。
次に、プロジェクトの作業ディレクトリに Reports という名前のフォルダ(存在しない場合)を作成し、そこにレポートファイル(例: StudentList.frx)をコピーします。
C#からレポートを呼び出す方法
C#からレポートを呼び出すには、ボタンのクリックイベントなどに処理を記述します。
ここでは、DataSet をデータソースとして利用し、事前に作成したレポートファイル report.frx を表示する例を紹介します。
サンプルコード
まず、レポートに渡すためのデータセットを準備し、ボタンクリックでレポートを表示するコードは以下のようになります。
using System;
using System.Data;
using System.Windows.Forms;
using FastReport;
namespace DataFromDataSet
{
public partial class Form1 : Form
{
private DataSet FDataSet;
public Form1()
{
InitializeComponent();
// フォーム起動時にデータセットを作成
CreateDataSet();
}
// レポート用のデータセットを作成するメソッド
private void CreateDataSet()
{
FDataSet = new DataSet();
DataTable table = new DataTable();
table.TableName = "Employees"; // この名前はレポートデザイナーで設定した名前と一致させる
FDataSet.Tables.Add(table);
table.Columns.Add("ID", typeof(int));
table.Columns.Add("Name", typeof(string));
table.Rows.Add(1, "Andrew Fuller");
table.Rows.Add(2, "Nancy Davolio");
table.Rows.Add(3, "Margaret Peacock");
}
// ボタンクリックで既存のレポートを表示するイベント
private void btnRunExisting_Click(object sender, EventArgs e)
{
// 1. Reportオブジェクトのインスタンスを生成
Report report = new Report();
// 2. 作成済みのレポートファイル(.frx)を読み込む
report.Load(@"report.frx"); // パスは適宜調整してください
// 3. レポートにデータセットを登録する
report.RegisterData(FDataSet);
// 4. レポートのプレビューを表示する
report.Show();
// 5. リソースを解放する
report.Dispose();
}
}
}
コードのポイント
-
Report report = new Report();
レポートを処理するためのReportオブジェクトを作成します。 -
report.Load(@"report.frx");
FastReport Designerで作成・保存した.frxファイルを読み込みます。ファイルのパスは、プロジェクトの構成に合わせて調整してください。 -
report.RegisterData(FDataSet);
C#側で用意したデータ(この例ではDataSet)をレポートに登録します。この処理により、レポートテンプレート内のデータソースと実際のデータが結び付けられます。 -
report.Show();
データが反映されたレポートをプレビューウィンドウで表示します。
期待される結果
プログラムを実行した後の出力例は次のようになります。
FastReportでは、プレビュー画面から印刷やPDFへのエクスポートが可能です。あなたや顧客の期待に応えるために、レポートを自由にカスタマイズできることを覚えておいてください。
評価版(トライアル)のご案内
FastReportは商用製品ですが、購入前にすべての機能を試すことができる評価版が用意されています。
この記事で紹介した機能や、より高度な帳票作成を試してみたい方は、ぜひ公式サイトから評価版をダウンロードしてみてください。
お読みいただきありがとうございました。

