AS-Report 12では、従来製品のVB-Report 11に比べて帳票作成の処理速度が向上しております。この記事では、同じデザインファイル(テンプレートxlsxファイル)を用いて帳票作成を行い、処理時間を計測・比較します。
環境
- Windows 11
- Visual Studio 2022
- .NET 6
- AS-Report 12.0 for .NET
- VB-Report 11.0 for .NET
用意したデザインファイル(テンプレート)
製品サンプルにも使用しているExcelファイル(SaveFileSample.xlsx)を使用します。

Windows フォームアプリケーション
.NET 環境で動作するプロジェクトを作成し、従来製品との処理速度を比較します。
処理内容については、テンプレートを参照し、そのまま帳票作成処理を行います。
VB-Report 11.0 for .NET との比較結果
500ページ分の帳票出力を複数回行い、処理に要した時間の平均値を計算しました。
| 製品 | Excel保存 | PDF保存 | Web帳票ドキュメント |
|---|---|---|---|
| AS-Report 12.0 for .NET | 約 2.31 秒 | 約 10.88 秒 | 約 11.07 秒 |
| VB-Report 11.0 for .NET | 約 2.45 秒 | 約 13.93 秒 | 約 14.45 秒 |
※OS: Windows 11 Pro 64bit、CPU: Intel Core i5-12400 2.50GHz、メモリ: 16GB、.NET 6の環境で計測
全体的に処理時間が低減しており、特にPDF/Web帳票ドキュメント出力の処理時間は約20%以上低減した結果になります。
OutputModeごとの比較結果
従来製品(VB-Report 11)では帳票出力を行う際、Excel保存に必要なデータや、それ以外の出力(プレビュー、印刷、PDF作成)に必要なデータを全て作成していましたが、AS-Report 12では作成する帳票データの種類が指定可能となり、作成するデータを絞ることで処理時間、メモリ使用量を低減させることが可能です。
出力モードはReport.Startメソッドの引数にOutputModeを指定することで、切り替えが可能です。三つのモードがあり、下記のような違いがあります。
| 出力モード | 説明 |
|---|---|
| OutputMode.All | 出力用のデータをすべて作成します。 |
| OutputMode.NotExcel | Excel保存以外(プレビュー、印刷、PDF出力)に必要なデータのみを作成します。 |
| OutputMode.ExcelOnly | Excel保存に必要なデータのみを作成します。 |
既定値(OutputMode.All)、およびその他の出力モードで出力を行った結果は以下の通りです。
Excel出力(All出力とExcelOnly出力で比較)
| 出力モード | 帳票処理時間 | メモリ使用量 |
|---|---|---|
| OutputMode.All | 約 2.31 秒 | 約 156.64 MB |
| OutputMode.ExcelOnly | 約 1.78 秒 | 約 116.33 MB |
PDF 出力(All出力とNotExcel出力で比較)
| 出力モード | 帳票処理時間 | メモリ使用量 |
|---|---|---|
| OutputMode.All | 約 10.88 秒 | 約 313.09 MB |
| OutputMode.NotExcel | 約 9.97 秒 | 約 273.67 MB |
SVG 出力(All出力とNotExcel出力で比較)
| 出力モード | 帳票処理時間 | メモリ使用量 |
|---|---|---|
| OutputMode.All | 約 11.07 秒 | 約 2273.14 MB |
| OutputMode.NotExcel | 約 10.28 秒 | 約 2207.24 MB |
出力形式(Excel/PDF/SVG)や出力モード(OutputMode)によって違いはあるものの、全体的に既定値(OutputMode.All)よりも出力モードを指定した方が 処理時間、メモリ使用量ともに低減される傾向となりました。
さいごに
AS-Report 12と従来製品(VB-Report11)で、帳票作成速度やメモリ使用量について比較してきました。 今回は以上になります。ありがとうございました。