デフォルトのセグメント値
行の作成時にフレックスフィールド・セグメントにデフォルト値を移入するには、定数、パラメータ、またはGroovyのデフォルト・タイプ、およびデフォルトの値または式を指定します。
セグメントの値と別のフィールドの値を変更時に同期させるには、属性の値の導出元のフレックスフィールド・パラメータとなるように導出値を指定します。 パラメータ値が変更されるたびに、属性の値も対応するように変更されます。 パラメータ値が変更されるとユーザーが入力した値は失われてしまうため、パラメータから属性を導出する場合は、属性を読取り専用とすることを検討してください。 デフォルト値を設定する場合またはパラメータからデフォルト値を導出する場合、開発によりパラメータとして指定された属性のみを選択できます。 セグメントを読取り専用または編集可能にすることと、デフォルト値または導出値(あるいはその両方)とを様々に組み合せることで、様々な効果が得られます。
セグメントのデフォルト・タイプがGroovyの場合は、式ビルダーを使用して、必要なGroovy式を設定できます。 式ビルダーを開くには、「デフォルト・タイプ」として「Groovy式」を選択し、「Groovy式ビルダー」アイコンをクリックします。 ただし、従属パラメータが変更された場合、Groovyのデフォルト設定では導出はサポートされない点に注意してください。 この式はセグメントの作成時にのみ評価されます。
次の表に、これらの異なる組合せを示します。 初期アクションは、エンティティ表で作成される属性値の行に対応します。 デフォルト値が読取り専用である場合、その後ユーザー・インタフェースで変更することはできません。 デフォルト値が読取り専用でない場合には、変更できます。 ただし、セグメント値が導出値である場合、ユーザーが変更したセグメント値は、導出値が変更されると上書きされます。
デフォルト・タイプ |
デフォルト値は指定されているか |
導出値は指定されているか |
初期アクション |
パラメータ変更後のアクション |
---|---|---|---|---|
なし |
いいえ |
はい |
初期セグメント値なし |
変更されたパラメータ導出値でセグメント値が更新されます |
定数 |
はい |
いいえ |
デフォルトのセグメント値 |
N/A |
定数 |
はい |
はい |
デフォルトのセグメント値 |
変更されたパラメータ導出値でセグメント値が更新されます |
パラメータ |
はい |
いいえ |
デフォルトのセグメント値がパラメータのデフォルト値です |
N/A |
パラメータ |
はい |
あり(デフォルト値と同じ) |
デフォルトのセグメント値がパラメータのデフォルト値および導出値です |
変更されたパラメータ導出値でセグメント値が更新されます |
パラメータ |
はい |
あり(デフォルト値と異なる) |
デフォルトのセグメント値がパラメータのデフォルト値です |
変更されたパラメータのデフォルト値でセグメント値は更新されません。 変更された導出値でのみセグメント値が更新されます。 |
Groovy式 |
はい |
N/A |
セグメントのデフォルト値は、Groovy式を評価することにより決定されます。 |
Groovy式はセグメントの作成時にのみ評価されます。 これらは、従属パラメータが変更されたときには評価されません。 |
SQL |
はい |
いいえ |
デフォルトのセグメント値は、SQL文の実行により返される値です |
N/A |
SQL |
はい |
はい |
デフォルトのセグメント値は、SQL文の実行により返される値です |
変更されたパラメータ導出値でセグメント値が更新されます |
PARAMETER
バインド変数のみが、指定された形式#{PARAMETER.<PARAMETER_NAME>}
のSQL文のデフォルト・タイプとしてサポートされています。その他のバインド変数(SEGMENT
、CONTEXT
、VALUESET
など)は、SQL文ではサポートされていません。 また、SQL文のデフォルト・タイプは、セグメントの作成時にのみ評価されます。 これらは、従属パラメータが変更されたときには評価されません。