この付録の内容は次のとおりです。
統合Excelワークブックで記述するEL式には、リテラル値、有効なExcel式、バインディング式、コンポーネント式およびリソース・バンドル式を含めることができます。
Oracle ADFコンポーネントのプロパティに適した型に正しく評価されるリテラル値。次にいくつかの例を示します。
ブール型の値true
およびfalse
-1
、0
および100
などの整数値
hello world
などの文字列値
コントロール・バインディング値またはヒントを評価するバインディング式。たとえば、#{row.bindings.ProductId.inputValue}
などです。
コンポーネント・プロパティを評価するコンポーネント式。例: #{components.TAB416222534.rowCount}
サーバーで定義されたロケール固有リソースを評価するリソース・バンドル式。例: #{res['excel.saveButton.label']}
サポートされるバインディング式、コンポーネント式およびリソース・バンドル式の構文の詳細は、「ADFデスクトップ統合コンポーネントのEL構文」を参照してください。
有効なExcel式。Excel式の文字列は、文字=
で開始する必要があります。リテラル文字列に#{...}
式が含まれる場合、最初にADFデスクトップ統合がこの式を評価して、結果の値をExcel式の文字列に挿入します。その後、ExcelがExcel式を評価します。
EL式を記述する場合、次の点に注意してください。
Excel式の要素を#{...}
式の中で使用しないでください。
EL式はADF構成内で管理されるため、EL式にExcelのセルの参照を含めることはできません。参照されるセルを移動すると、ExcelはADF構成を更新できません。より良い方法は、Excelの数式バーの「Name」ボックスを使用して、名前付きのセルの参照または範囲を定義することです。名前付きセルの参照または名前付きセル範囲の参照は、EL式から参照できます。名前付きセルの参照または範囲の定義の詳細は、Excelのドキュメントを参照してください。
EL式を含むExcel式
EL式を含むExcel式は255文字を超えないようにしてください。これはコンポーネントのプロパティに条件値を設定するのに使用される式にも適用されます。
EL式をサポートするADFデスクトップ統合コンポーネントでサポートされる式のプロパティを示します。
これらのプロパティを参照するために、EL式では次の構文を使用します。
#{components.
componentID.property
}
componentID
はコンポーネントのIDを参照し、property
はプロパティ(rowCount
など)を参照します。
表B-1 ADFデスクトップ統合コンポーネントの式のプロパティ
プロパティ | コンポーネント・タイプ | プロパティの型 | 予期される実行時の値 | 設計時の値 |
---|---|---|---|---|
|
表 読取り専用表 |
Int |
>=0 |
0 |
|
表 読取り専用表 |
Int |
>= 0 AND < RowCount(ゼロ・ベースのインデックス) |
-1 |
|
表 |
String |
"insert" "update" |
"unknown" |
|
Table.Column |
Boolean |
True False |
False |
取得するものに応じて、次の構文を使用してEL式を記述します。
ワークブック・パラメータ
#{workbook.params.
parameterName
}
parameterName
は、ワークブック・パラメータの名前です。これらのパラメータの使用の詳細は、「Fusion Webアプリケーションのページからワークブックへパラメータ値を渡す方法」を参照してください。
リソース・バンドルの文字列キーの値
#{
resourceBundleAlias
['
resourceBundleKey
']}
resourceBundleAlias
はリソース・バンドルの別名で、resourceBundleKey
は文字列キーの値です。リソース・バンドルの詳細は、「統合Excelワークブックでのリソース・バンドルの使用」を参照してください。
表B-2に、Oracle ADFコントロール・バインディングでサポートされる構文とプロパティを示します。ADFデスクトップ統合でサポートされる属性コントロール・ヒント(controlHint
)の詳細は、表B-3を参照してください。
表B-2に示すEL式の一部は、「式ビルダーの使用」で説明している式ビルダーを使用して生成できます。
表B-2 Oracle ADFコントロール・バインディングの式のプロパティと構文
構文 | コンポーネント・タイプ | オブジェクトのプロパティ | 設計時の値 |
---|---|---|---|
式ビルダーを使用し、次の構文でEL式を生成します。 #{bindings. また、これらのEL式を次のEL式に追加して記述することもできます。 #{bindings.
|
属性 |
属性コントロール・ヒント |
"" |
式ビルダーを使用し、次の構文でEL式を生成します。 #{bindings. |
リスト |
属性コントロール・ヒント |
"" |
表タイプのコンポーネントの列に対しては、次の構文でEL式を記述します。 #{row.bindings.
「ADF表コンポーネントへの動的な列の追加」で説明しているように、ADF表コンポーネントに動的な列を追加する場合は、次の構文でEL式を記述します。 #{bindings.
|
Table.Column |
inputValue |
"" |
ADFデスクトップ統合は、属性コントロール・ヒントの値を読み取ることができます。ADFデスクトップ統合がFusion Webアプリケーションから属性コントロール・ヒントの値を取得するために使用するEL式を記述します。
表B-2に、実行時に属性コントロール・ヒントの値を取得するEL式の構文を示します。
属性コントロール・ヒントは、Fusion Webアプリケーションで構成します。エンティティ・オブジェクトに属性コントロール・ヒントを追加する方法の詳細は、『Oracle Application Development FrameworkによるFusion Webアプリケーションの開発』のエンティティ・オブジェクトの属性のコントロール・ヒントの定義に関する項を参照してください。ビュー・オブジェクトに属性コントロール・ヒントを追加する方法の詳細は、『Oracle Application Development FrameworkによるFusion Webアプリケーションの開発』のビュー・オブジェクトのUIヒントの定義に関する項を参照してください。
表B-3 ADFデスクトップ統合で使用する属性コントロール・ヒント
属性コントロール・ヒント | 型 | Fusion Webアプリケーションで構成する値 |
---|---|---|
|
String |
エンティティ・オブジェクトまたはビュー・オブジェクト用に構成されるラベル属性コントロール・ヒントの値を戻します。 |
|
Boolean |
関連付けられている属性バインディングが更新可能な場合は |
|
Boolean |
この属性コントロール・ヒントは、ADFデスクトップ統合独自のものです。関連付けられている属性バインディングが更新可能でない場合は EL式のExcel式を評価する際の統合Excelワークブックのパフォーマンスを最適化するには、コンポーネントの #{bindings.
次の構文はお薦めしません。 =NOT(#{bindings.
属性コントロール・ヒントの |
|
Boolean |
関連付けられている属性バインディングの値が必須の場合は |
|
String |
属性コントロール・ヒントのデータ型を戻します。Fusion Webアプリケーションでは、複雑な名前の様々なデータ型をサポートできます。
|
|
String |
エンティティ・オブジェクトまたはビュー・オブジェクト用に構成されるツールチップ属性コントロール・ヒントのメッセージ値を戻します。 |
|
String |
エンティティ・オブジェクトまたはビュー・オブジェクト用に構成される
表示幅の詳細は、『Oracle Application Development FrameworkによるFusion Webアプリケーションの開発』のビュー基準にユーザー・インタフェース・ヒントを設定して検索フォームをサポートする方法に関する項を参照してください。 |
ADFデスクトップ統合の属性コントロール・ヒントは、Webアプリケーションのモデル構成で使用できる情報に基づきます。ADFデスクトップ統合では、ビュー・オブジェクトまたはエンティティ・オブジェクトのヒント値がサポートされますが、 ヒント値が実行時に行ごとのレベルで計算される場合は、プログラムによるヒント値のオーバーライドはサポートされません。
ADFデスクトップ統合では、表ELベースのプロパティのカスタム属性プロパティもサポートしています。詳細は、「ADFデスクトップ統合ELベースのプロパティとカスタム属性プロパティの使用」を参照してください。