| [Update Policy] プロパティ | |
トランザクションで項目属性の値を編集できるかどうかを設定します。また、トランザクションにテーブルが関連付けられている場合、値を Read Only に設定すると、プロシージャーやその他のオブジェクトによってそれらのテーブルを更新できなくなります。
Read Only | トランザクションで項目属性の値を編集できません。また、トランザクションにテーブルが関連付けられている場合は、プロシージャーやオブジェクトを使用しても、項目属性を更新できません。 | Updatable | トランザクションで項目属性の値を編集できます。 |
オブジェクト: Transaction
このプロパティは設計時にのみ適用されます。
1) 次のような Transaction オブジェクトについて考えます。
MaritalStatus
{
MaritalStatusId*
MaritalStatusName
}
[ Data Provider ] プロパティ = True、[ Used to ] プロパティ = Populate data となっている、つまり、データプロバイダーの目的がデータを取り込むことだとします。データプロバイダーは、必要なデータすべてを物理テーブル MaritalStatus に格納し (次の画像を参照)、これらの値が変更されないようにします。
これを行うには、トランザクションの [ Update Policy ] プロパティを Read Only に設定する必要があります。この設定により、項目属性値は、エンドユーザーによっても (トランザクションフォームの動作が読み取り専用になるため)、GeneXus オブジェクトを使用しても、更新できません。
2) 次に、Country トランザクションでも [ Data Provider ] プロパティ = True、[ Used to ] プロパティ = Populate data となっているとします。そのデータプロバイダーは、一部の初期データのみを物理テーブル Country に格納します。 [ Update Policy ] プロパティを Updatable に設定すると、エンドユーザーが新しい国を追加し、それらを編集できるようにすることができます。
3) データを更新するダイナミックトランザクションをこのプロパティを使って実装する例を参照してください。
4) Transaction オブジェクトに関連するデータビューがあるとします。外部テーブルの読み取りはできるが更新はできないようにする (更新は API を参照するモジュールやサービスを介して行う) には、 [ Update Policy ] プロパティを Read Only に設定します。
このプロパティは GeneXus 15 以降のバージョンで使用できます。
|
|
|
|
|