これからはじめるActiveReports帳票~ページレポート実践編(1)

.NET帳票コンポーネント「ActiveReports for .NET(アクティブレポート)」の使い方を解説する、「これからはじめるActiveReports帳票」。

前回のページレポート入門編(1)では、ASP.NET Coreアプリケーションでページレポートを作成する方法に加え、OverflowPlaceHolderコントロールを利用して1ページ内に複数の表を配置する方法をご紹介しました。

今回はその続編として、ページレポートの複数ページレイアウト機能を利用した帳票の作成方法をご紹介します。実際の業務で利用される見積書や提案書、報告書などでは、表紙・集計ページ・明細ページといった異なる構成のページを1つの帳票としてまとめることが少なくありません。

そこで今回は、建設業の見積書を題材に、表紙・集計・明細で構成される複数ページレイアウト帳票を作成します。ページレポートでは、1つの帳票に複数のページレイアウトを持たせることができ、ページごとに異なるデザインを適用できます。

第1回となる今回は、前回作成したプロジェクトを最新バージョンへ移行するとともに、その準備としてレポートファイルの作成とデータソース/データセットの設定を行います。

ページレポート実践編(1)

開発環境

ActiveReports for .NETの開発環境にはOSに「Windows」、統合開発環境(IDE)に「Visual Studio」が必要となります。事前に、ActiveReportsの必要システムに記載されている、開発環境をご準備ください。

今回の開発環境では、以下を使用します。

  • OS:Windows 11(25H2)
  • IDE:Visual Studio 2026(Version 18.7.2)
  • ActiveReports:20.0J SP1 (v20.1.1.0)

製品版の最新バージョンは以下より入手可能です。

トライアル版は無料で以下より入手可能です。

ActiveReports 18.0Jから20.0Jへの移行

前回の記事の公開後、ActiveReports for .NETは20.0Jへとバージョンアップし、さらに2026年7月1日にはサービスパックの「20.0J SP1」を公開しました。

本記事では、前回作成したプロジェクトを「ActiveReports ファイルコンバータ」で20.0J SP1へ移行し、その上で複数ページレイアウトを作成していきます。

ActiveReports 20.0J ファイルコンバータの起動

まず、前回作成したプロジェクト「PageReportsASPCoreApp」をVisual Studio 2026で開きます。次に、下の画像のように「ツール」メニューから「ActiveReports 20.0J ファイルコンバータ」を選択します。

ActiveReportsファイルコンバータの起動

「ActiveReports 20.0J ファイルコンバータ」が起動すると、次の画像のようにアップグレード対象のファイル一覧が表示されます。内容を確認し、[OK]ボタンをクリックすると、選択したファイルの移行が実行されます。なお、移行前のファイルはプロジェクト内の「ARConverterBackup」フォルダにバックアップされます。

移行が完了したら、[Close]ボタンをクリックしてダイアログを閉じます。

ファイルコンバーター実行

移行内容の確認

移行が完了したら、実際にパッケージが更新されているかを確認します。ソリューションエクスプローラーの「パッケージ」および「npm」配下を見ると、「MESCIUS.ActiveReports.Aspnetcore.Viewer.ja」と「@mescius/activereportsnet-viewer-ja」がそれぞれ20.1.1に更新されていることを確認できます。
なお、npm側のパッケージは反映のためにソリューションのクリーンとリビルドが必要です。「ビルド」メニューから「ソリューションのクリーン」、続いて「ソリューションのリビルド」を実行してください。

20.0J SP1に更新されたNuGetとnpmのパッケージ

ターゲットフレームワークを「 .NET 10」に変更

続いて、プロジェクトのターゲットフレームワークを最新の .NET 10 に変更します。ソリューションエクスプローラーでプロジェクト(PageReportsASPCoreApp)をダブルクリックし、プロジェクトのプロパティ画面を開きます。「アプリケーション」>「全般」の「ターゲット フレームワーク」から .NET 10.0 を選択してください。

ターゲットフレームワークを.NET 10に変更

変更後、再度ソリューションをリビルドしておきましょう。

動作確認

最後に、プロジェクトをデバッグ実行して、前回作成した帳票が20.0J SP1環境でも正しく表示されることを確認します。ブラウザにJSビューワが表示され、前回と同様に「売上明細表」がOverflowPlaceHolderコントロールで2列にレイアウトされていれば、移行は完了です。

20.0J SP1環境で表示された売上明細表

レポートファイルの追加

実践編では、建設業の見積書を題材に、表紙・集計・明細で構成される複数ページレイアウトの帳票を作成します。

ページレポートでは、1つの帳票に複数のページレイアウトを持たせることができます。これを利用することで、1ページ目、2ページ目、3ページ目…とページごとに異なるデザインの帳票を作成できます。

今回はその準備として、複数ページレイアウト用のレポートファイルを作成し、帳票で利用するデータソースとデータセットを設定していきます。

まずは、複数ページレイアウト用の新しいレポートファイルを追加します。ソリューションエクスプローラーで「Reports」フォルダを右クリックし、コンテキストメニューから「追加」>「新しい項目」を選択します。

続いて表示される「新しい項目の追加」ダイアログで、項目一覧から「ActiveReports 20.0J レポート」を選択します。名前に「MultiPageReport.rdlx」と入力し、「追加」ボタンをクリックします。

「新しい項目の追加」ダイアログでActiveReports 20.0J レポートを選択

追加後に、「新規レポート」ダイアログが表示されます。ここでは「ページレポート」を選択し、「作成」ボタンをクリックします。

「新規レポート」ダイアログでページレポートを選択

データソースとデータセットの追加

続いて、帳票で利用するデータソースとデータセットを追加します。追加の手順は「ページレポート入門編(1)」と同様のため、詳細は割愛します。

本記事では、建設業の建築工事の見積書を例として、住宅新築、店舗リフォーム、倉庫新築の3つの見積書サンプルデータを利用します。

以下のリンクからサンプルデータをダウンロードします。ダウンロード後、プロジェクト内に「Data」フォルダを新規作成し、その中にJSONファイルを保存してください。

このJSONには、見積ヘッダ・明細・各種マスタが含まれています。見積ヘッダと明細を親子関係で保持し、クライアントや受注者、現場代理人はマスタとして分離することで、実務のデータ構造に近い形にしています。

本記事では、上記のJSONをもとに、次の5つのデータセットを作成します。

データセット名用途内容JSON上のノード
estimates見積ヘッダ工事名、工期、発注者ID、担当者IDなど$.estimates.[*]
estimateDetails見積明細工事区分、項目、単価、数量、金額$.estimateDetails.[*]
clientsクライアントマスタ発注者情報$.clients.[*]
contractors受注者マスタ施工会社情報$.contractors.[*]
managers現場代理人マスタ担当者情報$.managers.[*]

データセットを追加できたら、レポートエクスプローラの[データソース]配下に次のように5つのデータセットが表示されていることを確認しましょう。

レポートエクスプローラに追加された5つのデータセット

これで、複数ページレイアウト帳票を作成するための準備が整いました。

さいごに

「これからはじめるActiveReports帳票」第7回は、ページレポート実践編(1)として、複数ページレイアウト帳票を作成するための準備を行いました。

今回は、ActiveReports 20.0J SP1への移行に加え、複数ページレイアウト用のレポートファイルの作成や、見積書帳票で利用するデータソースおよびデータセットの設定を行いました。

ページレポートでは、データセットを適切に設計しておくことで、ページごとに異なるレイアウトを持つ帳票でも効率的にデータを利用できます。今回作成したデータセットは、今後作成する表紙ページ・集計ページ・明細ページの土台となります。

次回は、今回準備したレポートファイルとデータセットを利用して、実際に表紙ページ・集計ページ・明細ページを作成し、複数ページレイアウトによる見積書帳票を完成させます。

今回の内容を実際に試してみたい方は、トライアル版をダウンロードしてお試しください。

製品の機能を手軽に体験できるデモアプリケーションも公開しておりますので、こちらもご確認ください。

また、ご導入前の製品に関するご相談、ご導入後の各種サービスに関するご質問など、お気軽にお問合せください。

\  この記事をシェアする  /