C1Reportコントロールでレポートのデザインを読み込み、印刷を行う
それでは、実際にC1Reportコントロールを使用してみましょう。
まずはFormコントロールにC1Reportコントロールを配置します。C1Reportコントロールを使うには前回までと同様、ツールボックスにアイテムを追加する必要があります。ツールボックスで右クリックし、「アイテムの選択」をクリックします。追加方法については、前回までの記事を参照してください。
C1Reportコントロールにデザインを読み込むには、Loadメソッドを利用します。Loadメソッドの引数として、「レポート定義ファイル名称」と「レポート名」を設定します。
this.c1Report1.Load("レポート定義ファイル名称", "レポート名");
「レポート定義ファイル名称」と「レポート名」を設定することで、データベースからデータを取得し、レポートのフォーマットを成形してくれます。
後は、DocumentプロパティのPrintメソッドを呼び出すだけで、印刷することが可能です。
this.c1Report1.Document.Print();
読み込んだレポートのプレビュー表示とファイル出力
先ほどは、読み込んだレポートをそのまま印刷しました。ですが、これでは印刷ボタン(Reportボタン)を押すとすぐ紙に印刷されてしまいます。一般的なアプリケーションと同じように、印刷前にプレビュー表示や印刷内容の設定などを行えた方が便利です。また、紙だけでなくファイル出力もできると使い勝手がよくなります。これらの機能も組み合わせてみましょう。
プレビュー表示については、標準PrintPreviewControlコントロールやPrintPreviewDialogコントロールを利用すると実現できます。また、ファイル出力は、C1ReportコントロールのRenderToFileメソッドの実行により行えます。
しかし、標準コントロールを使用したりC1Reportコントロールのメソッドを利用すると、ページの切り替えや表示サイズ(ズーム)の変更などで、さまざまな制御を行う必要があります。
C1PrintPreviewControlコントロール
そこでC1Studioに収録されているC1PrintPreviewControlコントロールを利用してみましょう。C1PrintPreviewControlコントロールはC1Reportコントロールに対して最適化されており、プレビューや印刷、ファイル出力などの機能が最初から用意されています。少しの設定で、驚くほど簡単にこれらの機能を実装できます。
では、実際にC1PrintPreviewControlコントロールを使ってみましょう。まず、レポート表示用の画面にC1PrintPreviewControlコントロールを貼り付けます。
使用するツールの設定やナビゲーションパネルの有無などは、C1PrintPreviewControlコントロールのプロパティ設定により変更できます。
// 使用するツールを設定する。 this.c1PrintPreviewControl1.AvailablePreviewActions = C1PreviewActionFlags.All; // ナビゲーションパネルを非表示にする。 this.c1PrintPreviewControl1.NavigationPanelVisible = false;
後は、C1ReportコントロールのDocumentプロパティを、C1PrintPreviewControlコントロールのDocumentプロパティに設定します。
// ドキュメントをプレビュー表示する。 this.c1PrintPreviewControl1.Document = this.c1Report1.Document;
これだけで、プレビュー表示機能は完成です。デザインどおりにデータが表示されたかと思います。
また、C1PrintPreviewControlコントロールの機能として用意されているツールボタンのクリックにて印刷やファイル出力なども行うことができます。
まとめ
今回は、C1Reportコントロール、C1PrintPreviewControlコントロールを利用して帳票の作成およびプレビューを行いました。前回までに行ったPDFファイルの帳票出力と違い、GUIで帳票デザインを作成したり、簡単にデータ取得することができたのではないでしょうか。
次回は、最後のまとめとして各コントロールの便利な機能を利用したり、その他のコントロールを組み合わせるなどして、売上管理アプリケーションの完成へと向かいたいと思います。