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

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

6回目となる今回は、「ActiveReports for .NET 7.0J」で追加された帳票タイプである「ページレポート」を取り上げます。前回ご紹介したセクションレポートとは異なり、ページレポートの特長であるWYSIWYG(What You See Is What You Get:見たままが得られる)を生かした帳票レイアウトの作成方法をご紹介します。

ページレポート入門編(1)

開発環境

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

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

  • OS:Windows 11(24H2)
  • IDE:Visual Studio 2022(Version 17.14.19)
  • ActiveReports:18.0J (v18.2.0.0)

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

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

ページレポートとは?

ページレポートとは、WYSIWYG(What You See Is What You Get:見たままが得られる)方式により、画面上のデザインと印刷結果を一致させられる帳票レイアウト機能です。デザイン画面で見えているとおりのイメージがそのまま出力されるため、完成形を意識しながら直感的にレイアウト作業を行えます。

また、セクションレポートでは実現に工夫が必要な、1ページに複数の表を配置するレイアウトや表紙付きの帳票なども、ページレポートであれば比較的簡単にデザインできます。

ページレポートについての、詳しい内容は以下のページでも解説しています。こちらもあわせてご覧ください。

ASP.NET Coreプロジェクトの作成

それでは実際の帳票作成を行うため、プロジェクトの作成を行っていきます。今回はASP.NET CoreのActiveReportsのプロジェクトテンプレート「ActiveReports 18.0J ASP.NET Core アプリ」を利用して、アプリケーションの作成を行っていきます。

プロジェクトの作成1

プロジェクト名は、「PageReportsASPCoreApp」として作成します。保存場所は任意の場所を設定してください。

プロジェクトの作成2

今回は「ページレポート」を利用しますので、プロジェクトテンプレートの「レポート種類の選択」ダイアログで、以下のように「ページレポート」を選択します。

プロジェクトの作成3

プロジェクトの作成が完了すると、次のように「Report.rdlx」というファイルが自動的に作成されます。ページレポートのデザインを行うために、このファイルをダブルクリックして開きます。

Report.rdlxのオープン

データソースの設定

続いて、出力対象となるデータソースを設定します。今回は、データソースとして下記のJSONファイルを使用します。このデータは、次のように食料品の売上明細を再現したサンプルデータです。

売上明細データ

以下のリンクよりファイルをダウンロードし、任意のフォルダに保存してください。

ページレポートでデータソースを設定するには、次のように「レポートエクスプローラ 18.0J」より、「データソースの追加」から行います。
※ レポートエクスプローラ 18.0Jが表示されていない場合、Visual Studioのメニューより「表示」>「その他ウインドウ」>「ActiveReports 18.0J レポートエクスプローラ」で表示設定を行ってください。

データソースの設定1

レポートデータソースダイアログの表示後、「種類」を「Json Provider」に変更し、JSONデータの形式の選択オプションを「埋め込み」に変更します。「埋め込みファイル/URLの選択、またはデータの入力」のドロップダウンをクリックし、[ファイルの選択]を押し、任意のフォルダに保存した「grocery_sales_detail2.json」を選択します。データが埋め込まれたのちに[OK]を押し、データソースを追加します。

データソースの設定2

データソースの追加後、レポートエクスプローラから、データセットを追加します。次の画像のように作成したデータソースを選択しコンテキストメニューより「データセットの追加」をクリックします。

データセットの設定1

ダイアログ表示後、「クエリ」ページを選択し、「クエリ」セクションの鉛筆アイコンをクリックし、JSONクエリデザイナを表示させます。表示後、すべてのフィールドが含まれるように、次の図のようにノードを選択し[OK]ボタンを押します。

クエリページ内のクエリエディタ上に、「$.[*]」が設定されていることを確認し、ダイアログ画面側の[OK]ボタンを押して、データセットを作成します。

データセットの設定2

レポートエクスプローラ上に以下のようにデータセットが追加されていれば、設定は完了です。

データセットの設定3

JSON形式以外のデータソースの設定に関しては、以下の製品ヘルプを参考に設定してください。

ActiveReports for .NET 18.0J – データソースとデータセット

ページ・RDLレポートでデータソースに接続する手順について説明します。

MESCIUS inc. docs.mescius.jp/help/activereports-18/#data-sources-and-datasets.html

ActiveReports for .NET(アクティブレポート)

帳票サイズの設定

データソースの設定が完了しましたので、帳票デザインの作成に進みます。はじめに、今回作成する帳票サイズの設定を行います。今回はA4横のレイアウトで作成します。

レポートエクスプローラ上の「ページ1」を選択し、プロパティウィンドウの「レイアウト」セクション内の各プロパティ値を、次の画像のように設定します。

帳票サイズの設定
帳票サイズのプロパティ設定値
プロパティ
Margins1.2cm, 1.2cm, 1.2cm, 1.2cm
Left1.2cm
Right1.2cm
Top1.2cm
Bottom1.2cm
PageSizeA4
Width29.7cm
Height21cm
PaperOrientationLandscape

帳票デザイン

コントロールの配置

それでは、帳票デザインを行うために帳票コントロールを配置していきます。まずはじめにページレポートにおいて、連続したデータを出力するために欠かせないコントロール「Table」をツールボックス上からドラッグアンドドロップでデザイナ画面上に配置します。

「Table」コントロールには、デフォルトで表示フィールドを設定するための列が3つ用意されていますが、今回は5列表示させたいため、2列追加します。次の動画を参考に列を追加してください。

さらに、列の追加後、それぞれの列にデータセットのフィールドを設定していきます。

フィールドの設定後、デザイナ上にテキストボックスを配置し、タイトルを設定。さらに細かなデザインの調整を行い、以下のようなレイアウトを作成します。

レイアウト作成

プロパティ設定の詳細は以下の表を参考に設定してください。

タイトル「売上明細表」
プロパティ
NameTextBox7
Top0.1852083cm
Left9.260417cm
Width9.181cm
Height1.8256cm
Value売上明細表
FontFamilyメイリオ
FontSize36pt
FontStyleNormal
FontWeight400
TextAlignCenter
VerticalAlignMiddle
PaddingTop2pt
PaddingBottom2pt
PaddingLeft2pt
PaddingRight2pt
テーブル
プロパティ
NameTable1
Top2.963333cm
Left0.3175cm
Width13.54667cm
Height1.799167cm
DataSetNameDataSet1
FontFamilyメイリオ
FixedSize Height14.9225cm
FixedSize Width13.54667cm
RepeatHeaderOnNewPagetrue
テーブル – ヘッダ行
コントロール名プロパティ
TextBox1Value売上日
BackgroundColorGainsboro
FontFamilyメイリオ
TextAlignCenter
VerticalAlignMiddle
BorderColor DefaultSilver
BorderStyle DefaultSolid
TextBox2Value伝票番号
BackgroundColorGainsboro
FontFamilyメイリオ
TextAlignCenter
VerticalAlignMiddle
BorderColor DefaultSilver
BorderStyle DefaultSolid
TextBox3Value顧客名
BackgroundColorGainsboro
FontFamilyメイリオ
TextAlignCenter
VerticalAlignMiddle
BorderColor DefaultSilver
BorderStyle DefaultSolid
TextBox13Value商品名
BackgroundColorGainsboro
FontFamilyメイリオ
TextAlignCenter
VerticalAlignMiddle
BorderColor DefaultSilver
BorderStyle DefaultSolid
TextBox10Value売上金額
BackgroundColorGainsboro
FontFamilyメイリオ
TextAlignCenter
VerticalAlignMiddle
BorderColor DefaultSilver
BorderStyle DefaultSolid
テーブル – 詳細行
コントロール名プロパティ
TextBox4Value=Fields!transaction_date.Value
DataElementNametransaction_date
Formatd
VerticalAlignMiddle
BorderColor DefaultSilver
BorderStyle DefaultSolid
TextBox5Value=Fields!slip_no.Value
DataElementNameslip_no
VerticalAlignMiddle
BorderColor DefaultSilver
BorderStyle DefaultSolid
TextBox6Value=Fields!customer_name.Value
DataElementNamecustomer_name
VerticalAlignMiddle
BorderColor DefaultSilver
BorderStyle DefaultSolid
TextBox14Value=Fields!item_name.Value
DataElementNameitem_name
VerticalAlignMiddle
BorderColor DefaultSilver
BorderStyle DefaultSolid
TextBox11Value=Fields!amount.Value
DataElementNameamount
Formatc
TextAlignRight
VerticalAlignMiddle
BorderColor DefaultSilver
BorderStyle DefaultSolid

この状態で、一度プレビューにて動作確認を行ってみます。

プレビューにて、設定したデータが正しく出力されることを確認できました。1ページに1つの表を配置する帳票の場合はこの状態で完成となりますが、今回は1ページに複数の表を配置する帳票を作成するため、さらにデザインを進めていきましょう。

※ 詳しい帳票デザイン方法については、以下の製品ヘルプを参考にデザインを行ってください。

OverflowPlaceHolderコントロールの配置

1ページに複数の表を配置する方法は2つあります。異なるデータを表示する場合は、Tableコントロールをもう一つ追加するだけです。一方、1つ目の表からあふれたデータを2つ目の表に続けて表示したい場合は、「OverflowPlaceHolder」コントロールを使用します。

さっそく、次のようにOverflowPlaceHolderコントロールをデザイナ上の右側に配置してみます。

OverflowPlaceHolderコントロールの配置

つづいて、TableコントロールのあふれたデータをOverflowPlaceHolderコントロールに表示させるため、Tableコントロールの「OverflowName」プロパティに、追加したOverflowPlaceHolderコントロールを指定します。

OverflowPlaceHolderコントロールの配置2

設定後、プレビューで動作確認を行ってみます。

Tableコントロールのあふれたデータが、正しくOverflowPlaceHolderコントロールに出力され、1ページ内の複数の表にデータ出力される帳票が完成しました。

最後に、デバック実行を行い、ブラウザ上での動作も確認してみます。

ブラウザ上で、作成した帳票がただしく表示されることが確認できました。

さいごに

「これからはじめるActiveReports帳票」第6回目は、ページレポート入門編(1)として、ページレポートの基本的な作成方法に加え、OverflowPlaceHolderコントロールを利用して1ページに複数の表を配置する方法を解説しました。

次回は、複数のページレイアウトを作成し、表紙を追加したり2ページ目以降でレイアウトを変更したりする方法をご紹介します。ぜひ、ご期待ください。

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

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

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

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