ジェネクサス・ジャパン
代表取締役CEO
大脇 文雄
この連載では、南米ウルグアイ生まれの業務アプリケーション開発ツール「GeneXus(ジェネクサス)」について説明している。第1回でGeneXusの全体像を、第2回から第4回まで、GeneXusを利用したシステム開発の流れを説明した。
今回は最終回である。前回までの結果を生かして、帳票の作成や仕様変更への対応の進め方を説明する。最後に、GeneXusによる開発のポイントをまとめたい。
帳票を作ってみる
前回までで、GeneXusを使ってWeb画面を作成し動かすところまでを説明した。続いて帳票を作ってみよう。
帳票やバッチ処理を作るには「Procedure」オブジェクトを使用する。フォルダービューの「Objects」を右クリックして「新規」>「オブジェクト」を選び、「Procedure」オブジェクトを選択する。帳票に関する詳細な説明はここでは割愛し、出来上がったオブジェクトを紹介する(図1)。
この「Procedure」オブジェクトは、GeneXus の中で唯一、手続きを書けるオブジェクトだ。例えば、図1の帳票は「奇数行と偶数行で背景色を分ける」という処理を実行する必要がある。そのために、手続き型の処理を記述しなければならない。
図2の赤線で囲った部分が「奇数行と偶数行で背景色を分ける」という処理を書いている個所だ。単純に行数をカウントし、それを2で割った残りが1か2かを見て、印刷行を分けている。
バッチ処理も同じやり方で記述できる。当然、処理を書かなければならない分、開発の手間がかかる。
ここでは出力先を「PDFファイル」にしてみよう。それには、このオブジェクトのルールを設定すればよい。Output_fileにPDFのファイル名とPDFファイルであることを指定する「pdf」というパラメータを設定する(図3)。
次に、送り状の入力画面にも印刷のトリガーとなる印刷ボタンを作成し、そのボタンがクリックされたら帳票を出力するよう設定する(図4)。
送り状のWeb画面に印刷ボタンを作成し、その印刷ボタンのプロパティのOnClickEventに「Print」と設定する。これで、印刷ボタンがクリックされたらPrintイベントに記述された処理が実行される(図5)。NewInvoiceという「Procedure」オブジェクトが呼び出されて、帳票が印刷されることになる。
続いて、メニューバーの「ビルド(B)」をクリックし、「開発メニューを実行」をクリックする。表示された開発者メニューから「送り状」をクリックし、送り状のデータを入力する(図6)。
ここまでできたら、印刷ボタンをクリックしてみよう。見積書がPDFファイルとして出力されるはずだ(図7)。