| HOME » 開発者ブログ |
|
パッケージJava製品開発担当の大です。こんにちは。
前回に引き続き、「シーオーリポーツIDEプラグイン for Eclipse」の解説をします。
今回は、帳票クラスウィザードを使用して作成した帳票アプリケーションの基本部分を、目的の動作をするように変更していきます。
前回のサンプルプロジェクトを引き続き使用します。ここで、今回作成する帳票アプリケーションの仕様を確認しておきましょう。
シーオーリポーツには、データアクセスを行う機能は用意されていません。「シンプル」テンプレートを使用した場合は、動作確認用の簡易的なデータアクセスクラス「SimpleRecordSet」が作成されますが、今回はCSVから読み込みたいため、CSV読み込み用のレコードセットクラスを作成します。もともとサンプルに入っていたtestパッケージのSimpleCSVRecordSetクラスを、作業中のtest2パッケージにコピーし、HokenSampleReportクラスの中のSimpleRecordSetを使用している部分のコードを、SimpleCSVRecordSetを使用するように変更しましょう。
変更前:
// レコードセットのインスタンスを生成します SimpleRecordSet recordSet = new SimpleRecordSet(); // ダミーデータを作成します recordSet.createDummyData(); // 帳票を作成します report.create(recordSet);
変更後:
// レコードセットのインスタンスを生成します
SimpleCSVRecordSet recordSet =
new SimpleCSVRecordSet("HokenSample.csv");
// 帳票を作成します
report.create(recordSet);
SimpleCSVRecordSetクラスとSimpleCSVRecordSetクラスはどちらもIRecordSetインタフェースを実装しており、同じようにHokenSampleReportクラスから扱うことができます。同様に、データがXML形式だったり、DBを参照するものであっても、IRecordSetインタフェースを実装したクラスを用意すれば同じように扱えます。サンプルに入っているSimpleCSVRecordSetはごく単純な作りになっていますので、実運用には耐えられませんが、インタフェース実装の参考にしてみてください。
余談ですが、シーオーリポーツ 帳票クリエータにはデータアクセス機能も備わっており、GUIでデータとのマッピングを行うこともできるツールも付属しています。データアクセス部分の実装が面倒な方は、こちらも是非試してみてください。
シーオーリポーツでは、フォームファイル上に無いオブジェクトを、帳票出力時に動的に追加することができます。
ここでは、円オブジェクトのインスタンスを作成し、条件によって位置を変えながら描画します。
testパッケージのHokenSampleReportFormクラスを見ながら、作業中の同ファイルを編集しましょう。
サンプルと同じ動きができるようになったでしょうか?
次回は、帳票クラスウィザードをより使いやすくするために、動作をカスタマイズしていきます。
Permalink: http://www.hos.co.jp/blog/20090323/
Last modified: 2009 年 9 月 11 日 11:31 AM
※ 開発者ブログの内容は無保証です。製品のユーザサポート対象ではありません。ご了承ください。