パターン活用ケース1

パターンを活用した例を紹介します

目的・要件

外部帳票サービスを利用する上で、GeneXus開発における開発効率の向上を図りたい。
外部帳票サービスに対するAPIを使用して帳票を出力する。
独自のJSONフォーマットに合わせて、RESTサービスで通信を行う。
usecase1_1




ご提案

Transaction、SDTオブジェクトに対するパターンの活用
連携先APIの仕様が固まっているため、自動化が可能。
usecase1_3




パターン設計

Transaction、SDTの項目ごとに独自フォーマットのJSON文字を生成するプロシージャを生成する。
パターンインスタンスに各項目のキー文字列の設定を行い、出力制御を行えるようにする。
usecase2_1




メリット

1帳票あたりおおよそ 0.5人日程度の工数削減が見込まれる。
SDTに応じたパターン活用が行えるため、柔軟な項目変更が可能となる。
パターン開発をしっかり検証することで、バグ発生率を低下させることが出来る。




デメリット

パターンをインストールしたGeneXusでないと動作しない。
ある程度の横展開等が見込まれないと、パターン開発における費用対効果が低い。




まとめ

パターンの強みは、存在するオブジェクトに応じて動的にオブジェクトが作成できるところにあります。
既に仕様が固まっており、同じ作業を手作業で何度も繰り返さなければならない作業が発生します。
手作業のため、単純ミスが発生することもよくあります。
(未だにスペルミスしたままリリースされたコードを見かけます。)

独自にソース自動生成ツール(Excelマクロ)等を使用して、開発の補助をすることは可能ですが、
ベースに基づいた処理、変数定義等を行う上で、ミスが発生する可能性がございます。
開発効率の向上もメリットの一つですが、品質の向上、メンテンナンスの向上も大きなメリットとなります。

既定の仕様に対しての自動化に対して、候補として検討する価値はあると考えております。