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