並行トランザクション

GeneXusは1トランザクション(下位レベルなし)=1テーブルと理解していたのですが、必ずしもそうではありません。
複数のトランザクションで、1つのテーブルを管理するような構造も実現可能です。

トランザクションの構造

以下のような3つのトランザクションを作成したとします。

Personトランザクション

Studentトランザクション

Teacherトランザクション

生成されたテーブルの構造

並行トランザクションのテーブル

テーブルオブジェクトを確認すると、Personテーブルオブジェクトのみ作成されました。
StudentトランザクションやTeacherトランザクションにしか存在しない項目属性も、Personテーブルの1項目として生成されています。

このことからGeneXusはトランザクション毎にテーブルを生成するという仕組みではなく、主キーの項目属性を基準にしてテーブルの生成を判断しているということがわかります。
GeneXusではこのようなトランザクションを、「並行トランザクション」と呼ぶようです。

GeneXus Wiki – 並行トランザクション
http://wiki.genexus.jp/hwiki.aspx?並行トランザクション,

並行トランザクションの活用方法として、上記のように類似のデータ構造だが画面を別にする場合やログイン権限に応じた画面の作成する場合などがあります。

 

システム開発のご相談はこちらからお気軽にお問合せください。


コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です