XML形式のレポート(RPXファイル)
ActiveReportsのレポートは、XML形式のファイルとして定義することも可能です。この形式のファイルは、デフォルトの拡張子が「.rpx」なので、「RPXファイル」とも言われます。
この形式の場合、.vbファイルや.csファイルのコードを直接使用することはできません。この形式でコードによる処理を実装したい場合には、「スクリプト」を使用します。
スクリプトは、レポート編集画面のスクリプトタブから記述することができます。また、レポート全体のプロパティのScriptLanguageプロパティで、VBかC#のどちらの言語で記述するか選択できます。
スクリプトを使用する場合も、.vbや.csのコードファイルを使用する場合と同様に、イベントの内部に処理を記述します。
なお、スクリプトの記述方法は、.vbや.csファイルと基本的に同様であり、インテリセンスなども表示されますが、レポート全体のプロパティにアクセスするためには、「Me」や「this」ではなく識別子「rpt」を使う必要があるなど、いくつかの注意点があります。これについては製品ヘルプの[概念]-[セクションレポートの概念]-[スクリプト]を参照してください。
RPXファイルをViewerコントロールに表示するコードは、以下のようになります。
Dim rpt As New GrapeCity.ActiveReports.SectionReport rpt = New GrapeCity.ActiveReports.SectionReport Dim xtr As New System.Xml.XmlTextReader(RPXファイルのパス) rpt.LoadLayout(xtr) rpt.Run() Me.Viewer1.Document = rpt.Document
GrapeCity.ActiveReports.SectionReport rpt = new GrapeCity.ActiveReports.SectionReport(); // コードを実行する前に、report.rpxをプロジェクトのbin\debugフォルダに配置します。 System.Xml.XmlTextReader xtr = new System.Xml.XmlTextReader(RPXファイルのパス); rpt.LoadLayout(xtr); xtr.Close(); rpt.Run(); viewer1.Document = rpt.Document;
まとめ
セクションレポートでは、コードやスクリプトを使用することで、さまざまな処理を実装することができ、複雑なレイアウトを実現できます。
次回はページレポートのMatrixの使い方について説明します。