【GeneXus】トランザクションをコピーしたら何が起こる?

トランザクションをコピーしたら何が起こるでしょうか。

コピー元トランザクション

BLOG_1というトランザクションを作りました。
再編成、ビルドを実行します。

コピー先トランザクション

BLOG_1トランザクションで「名前をつけて保存」を選択し
BLOG_2というトランザクションを作りました。
BLOG_1ではディスクリプションが英字だったためBLOG_2のディスクリプションは日本語にしてみました。

コピーしたトランザクションをビルドしてみる

再編成が実施されず、BLOG_1をベーステーブルとするナビゲーションが表示されました。

実行画面①

同じレイアウトの画面が2つ出来上がりました。

GeneXusのナレッジベース内では、同一名称の項目属性が共存することはできません。
BLOG_2トランザクション生成時に、ディスクリプションを日本語にしました。
BLOG_1とBLOG_2は同一項目属性による同一構成のため、
BLOG_2で操作したディスクリプション変更は、同じ項目属性を使用しているBLOG_1にも反映されることになります。

実行画面②

BLOG_1画面で番号1のデータを登録します。

BLOG_2画面で番号1を入力しフォーカスアウトすると
BLOG_1画面で登録した内容が表示されます。
BLOG_1画面とBLOG_2画面で同一テーブルを参照していることがわかります。

まとめ

・GeneXusトランザクション=データベーステーブルではない
・トランザクションコピーは、同一テーブルを参照する画面でレイアウトを複数バージョン用意したり処理有無による違いを見たりするときに便利かもしれない

おまけ

BLOG_2の項目順序を変えて、Rulesで住所を固定値にしてみました!