ヘッダーをスキップ
Oracle® Fusion Middleware Oracle ADFデスクトップ統合によるアプリケーションの開発
12c (12.1.3)
E59438-01
  目次へ移動
目次

前
 
次
 

6 ADFデスクトップ統合フォーム・タイプ・コンポーネントの使用

この章では、エンド・ユーザーがFusion Webアクションから取得したデータを管理できるようにするためにADFデスクトップ統合に用意されているコンポーネント(ボタン、ラベル、入力テキスト、出力テキスト、値リストなど)を挿入および構成する方法について説明します。また、Excel式を使用してこれらのコンポーネント内で計算されたデータを表示する方法についても説明します。

この章の内容は次のとおりです。

6.1 ADFデスクトップ統合フォーム・タイプ・コンポーネントについて

ADFデスクトップ統合フォーム・タイプ・コンポーネントを使用すると、エンド・ユーザーが統合ExcelワークブックのFusion Webアプリケーションから取得したデータを管理できるようになります。5.5項「コンポーネント・パレットの使用」にあるとおり、コンポーネント・パレットのADFフォーム・コンポーネントを公開するのではなく、ADFデスクトップ統合は次のコンポーネントを使用して、統合Excelワークブックでフォーム・タイプ機能を作成します。

図6-1は、これらのコンポーネントを示します。

図6-1 ADFデスクトップ統合フォーム・タイプ・コンポーネント

この図は周囲のテキストで説明しています

フォーム・コンポーネントやバインディングをマージされたセルに挿入、またはフォーム・コンポーネントやバインディングの挿入後にセルをマージすることはできますが、複数のフォーム・コンポーネントをマージされたセルに挿入、または異なるフォーム・コンポーネントがあるセルをマージすることはできません。

コンポーネントをマージされたセルに挿入する前に、次のことに注意してください。

6.1.1 ADFデスクトップ統合フォーム・タイプ・コンポーネントのユース・ケースと例

ADFデスクトップ統合フォーム・タイプ・コンポーネントは、ユーザーの入力やFusion Webアプリケーションからの出力用に統合Excelワークブックでフォームをビルドするときに使用されます。図6-2に示すように、EditWarehouses-DT.xlsxのナビゲーション・フォームに使用されるフォーム・タイプ・コンポーネントにより、エンド・ユーザーはデータを容易にナビゲートおよび更新できます。

図6-2 ADFデスクトップ統合フォーム・タイプ・コンポーネントを使用したナビゲーション・フォーム

この図は周囲のテキストで説明しています

6.1.2 ADFデスクトップ統合フォーム・タイプ・コンポーネントの追加機能

ワークシートにコンポーネントを追加した後、イベントやエンド・ユーザーのアクションに対する応答など、機能を追加しなければならないことがあります。フォーム・コンポーネントで使用可能な他の機能へのリンクは次のとおりです。

6.2 ADFボタン・コンポーネントの挿入

ADFボタン・コンポーネントは、実行時にExcelワークシートのボタンをレンダリングします。エンド・ユーザーはこのボタンをクリックして、ClickActionSetプロパティ・グループで指定される1つ以上のアクションを起動します。

LowerRightCornerプロパティおよびPositionプロパティは、実行時にExcelワークシートでボタンが占有する領域を決定します。

図6-3に、ADFボタン・コンポーネントのプロパティ・インスペクタが表示された状態を示します。エンド・ユーザーが実行時にこのボタンをクリックすると、ClickActionSetで指定された配列のアクションが起動します。

図6-3 設計モードのADFボタン・コンポーネント

この図は周囲のテキストで説明しています

ADFボタン・コンポーネントのプロパティの詳細は、付録A.11「ADFボタン・コンポーネントのプロパティ」を参照してください。

ADFボタン・コンポーネントを挿入するには:

  1. 統合Excelワークブックを開きます。

  2. コンポーネントを配置するExcelワークシートのセルを選択します。

  3. コンポーネント・パレットで「ADFボタン」を選択して、コンポーネントの挿入をクリックします。または、「Oracle ADF」タブで、コンポーネントの挿入ドロップダウン・リストから「ADFボタン」を選択します。

  4. プロパティ・インスペクタで、コンポーネントが実行時に起動するアクションと、コンポーネントの外観、設計およびレイアウトを決定するプロパティを構成します。表6-1は、値を指定する必要のあるプロパティの概要および追加情報へのリンクを示します。

    図6-1 ADFボタン・コンポーネントのプロパティ

    プロパティ 指定する内容

    Label

    ADFボタン・コンポーネントの目的を示すために実行時にラベルに解決される文字列またはEL式。ボタン・ラベルのデフォルトはアクション・バインディングIDです。

    EL式(使用される場合)は、resリソース・バンドルの文字列キーを参照します。リソース・バンドルの詳細は、10.2項「統合Excelワークブックでのリソース・バンドルの使用」を参照してください。統合Excelワークブックでのラベルの使用の詳細は、9.4項「統合Excelワークブックでのラベルの使用」を参照してください。

    ラベルにアンパサンド文字(&)を含めるには、&&を使用します。1つの&文字は特殊文字として機能し、ラベルには表示されません。

    ClickActionSet

    ClickActionSetActions配列で、エンド・ユーザーがADFボタン・コンポーネントをクリックしたときに起動する1つ以上のアクションを指定します。アクション・セットの詳細は、8.2項「アクション・セットの使用」を参照してください。


  5. 「OK」をクリックします。

    図6-4は、実行時のADFボタン・コンポーネント(赤線の枠内)の例を示します。

    図6-4 実行時のADFボタン・コンポーネント

    この図は周囲のテキストで説明しています

注意:

  • Excelワークシートのビュー・モードをページ・レイアウトまたはページ・ブレーク・モードに変更した場合、ADFボタン・コンポーネントは予期しない位置にレンダリングされる可能性があります。ボタンを元の位置でレンダリングするために、ワークブックを保存せずに通常モードに戻り、統合Excelワークブックを実行して停止する必要があります。

  • ワークシートでセルを選択することで、後でコンポーネントのプロパティを変更できます。ADFボタン・コンポーネントをクリックすると、そのプロパティ・インスペクタが開きます。

  • ADFボタン・コンポーネントは100%ズームの状態でのみアクティブであり、エンド・ユーザーが統合Excelワークシートでズームインやズームアウトすると無効になります。

  • コンポーネントを削除するには、「削除」リボン・コマンドを使用します。詳細は5.14項「ADFデスクトップ統合コンポーネントの削除」を参照してください。



ヒント:

設計モードでは、ボタンにフォーカスがある場合に、ボタンをクリックしたりスペースバーを押してプロパティ・インスペクタを開くことができます。右クリックして表示されるコンテキスト・メニューは、ボタンでは無効です。


統合Excelワークブックにナビゲーション・ボタンを追加して前または次のレコードに移動するには、6.12項「ナビゲーション・ボタンの使用」を参照してください。

6.3 ADFラベル・コンポーネントの挿入

ADFラベル・コンポーネントは、静的な文字列値を表示するために、アクティブなワークシートに挿入できるコンポーネントです。プロパティ・インスペクタのLabelの入力フィールドに値を指定するか、式ビルダーを起動して、実行時に文字列に解決されるEL式を記述します。取得される文字列は、リソース・バンドルまたはエンティティあるいはビュー・オブジェクトの属性コントロールのヒント内で定義できます。たとえば、次のEL式は実行時にCountryId属性のラベルの値に解決されます。

#{bindings.CountryId.label}

ADFラベル・コンポーネントや他のOracle ADFコンポーネントでLabelプロパティに指定する値は、Oracle ADFコンポーネントをホストするワークシートが初期化(初めて開く)されるときに評価されます。

プロパティ・インスペクタを使用して、スタイルや位置などのコンポーネントのプロパティをワークシートで構成できます。

図6-5に、ADFラベル・コンポーネントのプロパティ・インスペクタが最前面に表示された状態を示します。ADFラベル・コンポーネントは、実行時にCountryId属性のラベルに解決されるEL式を参照します。

図6-5 設計モードのADFラベル・コンポーネント

この図は周囲のテキストで説明しています

ADFラベル・コンポーネントを挿入するには:

  1. 統合Excelワークブックを開きます。

  2. コンポーネントを配置するExcelワークシートのセルを選択します。

  3. コンポーネント・パレットで「ADFラベル」を選択して、コンポーネントの挿入をクリックします。または、「Oracle ADF」タブで、コンポーネントの挿入ドロップダウン・リストから「ADFラベル」を選択します。

  4. プロパティ・インスペクタで、コンポーネントの外観、設計およびレイアウトを決定するプロパティを構成します。

  5. 「OK」をクリックします。

図6-6は、実行時のADFラベル・コンポーネント(赤線の枠内)の例を示します。

図6-6 実行時のADFラベル・コンポーネント

この図は周囲のテキストで説明しています

注意:

コンポーネントのプロパティを後から変更するには、コンポーネントを配置するワークシートのセルを選択して、プロパティ・インスペクタを表示します。または、セルで右クリックして、「ADFコンポーネント・プロパティの編集」を選択し、プロパティ・インスペクタを開きます。

コンポーネントを削除するには、「削除」リボン・コマンドを使用します。詳細は5.14項「ADFデスクトップ統合コンポーネントの削除」を参照してください。


統合Excelワークブックでのラベルの使用の詳細は、9.4項「統合Excelワークブックでのラベルの使用」を参照してください。

6.4 ADF入力テキスト・コンポーネントの挿入

ADF入力テキスト・コンポーネントは、コンポーネント・パレットを使用して、アクティブなワークシートに挿入できるコンポーネントです。コンポーネントの挿入時、ワークシートのアクティブなセルには、ワークシートDownSyncアクションが起動された後のコンポーネントのバインディングの現在の値が表示されます。エンド・ユーザーは実行時にこの値を編集できます。ワークシートUpSyncアクションを構成して、エンド・ユーザーが値に加える変更をFusion WebアプリケーションおよびCommitアクション・バインディングに送信して、Fusion Webアプリケーションで変更をコミットします。

ユーザーがプロパティ・インスペクタを使用してワークシートのセル(DoubleClickActionSetプロパティ)をダブルクリックすると、位置やスタイル、動作といったコンポーネントのプロパティの多くを構成できます。DoubleClickActionSetの詳細は、8.2項「アクション・セットの使用」を参照してください。

ADF表コンポーネントは、ADF表コンポーネントの列のInsertComponentプロパティまたはUpdateComponentプロパティの値を設定すると、このコンポーネントをサブコンポーネントとして起動できます。このコンテキストでは、ADF入力テキスト・コンポーネントによって、エンド・ユーザーはADF表コンポーネントにデータを入力できるようになります。詳細は、7.7項「データを挿入するためのADF表コンポーネントの構成」を参照してください。

図6-7に、ADF入力テキスト・コンポーネントのプロパティ・インスペクタが最前面に表示された状態を示します。ADF入力テキスト・コンポーネントは、ADFデスクトップ統合のSummitサンプル・アプリケーションのCity属性バインディングへバインドされます。ユーザーは、このコンポーネントに市の名前を入力します。

図6-7 設計モードのADF入力テキスト・コンポーネント

この図は周囲のテキストで説明しています

ADF入力テキスト・コンポーネントを挿入するには:

  1. 統合Excelワークブックを開きます。

  2. コンポーネントを配置するExcelワークシートのセルを選択します。

  3. コンポーネント・パレットで「ADF入力テキスト」を選択して、コンポーネントの挿入をクリックします。または、「Oracle ADF」タブで、「コンポーネントの挿入」ドロップダウン・リストから「ADF入力テキスト」を選択します。

  4. プロパティ・インスペクタで、コンポーネントの外観、レイアウトおよび動作を決定するプロパティを構成します。表6-2は、値を指定する必要のあるいくつかのプロパティの概要を示します。このコンポーネントの他のプロパティの詳細は、A.2項「ADF入力テキスト・コンポーネントのプロパティ」を参照してください。

    表6-2 ADF入力テキストのプロパティ

    プロパティ 指定する内容

    InputText.Value

    コンポーネントが参照するバインディングを決定するValueプロパティのEL式。

    InputText.ReadOnly

    エンド・ユーザーが加える変更がアップロードされるようにFalseに解決されるEL式。コンポーネントで変更を無視する場合は、Trueに解決されるEL式を記述してください。デフォルト値はFalseです。


  5. 「OK」をクリックします。


    注意:

    コンポーネントのプロパティを後から変更するには、コンポーネントを配置するワークシートのセルを選択して、プロパティ・インスペクタを表示します。または、セルで右クリックして、「ADFコンポーネント・プロパティの編集」を選択し、プロパティ・インスペクタを開きます。

    コンポーネントを削除するには、「削除」リボン・コマンドを使用します。詳細は5.14項「ADFデスクトップ統合コンポーネントの削除」を参照してください。


図6-8は、実行時のADF入力テキスト・コンポーネント(赤線の枠内)の例を示します。

図6-8 実行時のADF入力テキスト・コンポーネント

この図は周囲のテキストで説明しています

6.5 ADF出力テキスト・コンポーネントの挿入

ADF出力テキスト・コンポーネントは、コンポーネント・パレットを使用して、アクティブなワークシートに挿入できるコンポーネントです。コンポーネントの挿入時、ワークシートのアクティブなセルには、ワークシートDownSyncアクションを起動した後のコンポーネントのバインディングの現在の値が表示されます。コンポーネントにより表示される値は読取り専用です。エンド・ユーザーがセルの値に加える変更で、コンポーネントを配置するものは、変更がFusion Webアプリケーションに送信される際に無視されます。

また、このコンポーネントはADF表コンポーネントおよびADF読取り表コンポーネントのサブコンポーネントとして機能することができます。ADF表コンポーネントおよびADF読取り専用コンポーネントの列は、ADF出力テキスト・コンポーネントを使用するように構成できます。

スタイル、セルをダブルクリックしたときの動作(DoubleClickActionSetプロパティ)および位置など、コンポーネントの様々なプロパティを、プロパティ・インスペクタを使用してワークシートで構成できます。

図6-9に、ADF出力テキスト・コンポーネントのプロパティ・インスペクタが最前面に表示された状態を示します。

図6-9 設計モードのADF出力テキスト・コンポーネント

この図は周囲のテキストで説明しています

ADF出力テキスト・コンポーネントを挿入するには:

  1. 統合Excelワークブックを開きます。

  2. コンポーネントを配置するExcelワークシートのセルを選択します。

  3. コンポーネント・パレットで「ADF出力テキスト」を選択して、コンポーネントの挿入をクリックします。または、「Oracle ADF」タブで、「コンポーネントの挿入」ドロップダウン・リストから「ADF出力テキスト」を選択します。

  4. プロパティ・インスペクタで、コンポーネントの外観、レイアウトおよび動作を決定するプロパティを構成します。

    たとえば、ADF出力テキスト・コンポーネントが何を参照するかを決定するために、ValueプロパティにEL式を記述または指定する必要があります。ADF出力テキスト・コンポーネントのプロパティに指定する値の詳細は、A.3項「ADF出力テキスト・コンポーネントのプロパティ」を参照してください。

  5. 「OK」をクリックします。


    注意:

    コンポーネントのプロパティを後から変更するには、コンポーネントを配置するワークシートのセルを選択して、プロパティ・インスペクタを表示します。または、セルで右クリックして、「ADFコンポーネント・プロパティの編集」を選択し、プロパティ・インスペクタを開きます。

    コンポーネントを削除するには、「削除」リボン・コマンドを使用します。詳細は5.14項「ADFデスクトップ統合コンポーネントの削除」を参照してください。


図6-10は、実行時のADF出力テキスト・コンポーネント(赤線の枠内)の例を示します。

図6-10 実行時のADF出力テキスト・コンポーネント

この図は周囲のテキストで説明しています

6.6 ADF値リスト・コンポーネントの挿入

ADF値リスト・コンポーネントは、実行時にExcelワークシートのセルにドロップダウン・メニューを表示するコンポーネントです。実行時に最大250の値が表示されます。値リスト・コンポーネントは、Excelワークシートのセルに挿入できます。

ListIDプロパティの値を指定する必要があります。ListIDプロパティは、ワークブックDownSyncアクションを起動した後で実行時にドロップダウン・メニューに値リストを移入するリスト・バインディングを参照します。

図6-11に、ADF値リスト・コンポーネントのプロパティ・インスペクタが最前面に表示された状態を示します。ADF値リスト・コンポーネントは、実行時にExcelワークシートのドロップダウン・メニューに値を移入するリスト・バインディング(RegionId)を参照します。


注意:

  • ADF表コンポーネントの列のドロップダウン・メニューは、TableColumn配列のInsertComponentプロパティの値を指定する際に、TreeNodeListまたはModelDrivenColumnComponentを作成するサブコンポーネントとして選択すれば表示できます。詳細は、7.14項「ADF表コンポーネント列での値リストの作成」を参照してください。

  • 日付値を使用するADF値リスト・コンポーネントはサポートされていません。


図6-11 ADF値リスト・コンポーネント

この図は周囲のテキストで説明しています

ADF値リスト・コンポーネントを挿入するには:

  1. 統合Excelワークブックを開きます。

  2. コンポーネントを配置するExcelワークシートのセルを選択します。

  3. コンポーネント・パレットで「ADF値リスト」を選択して、コンポーネントの挿入をクリックします。または、「Oracle ADF」タブで、コンポーネントの挿入ドロップダウン・リストからADF値リストを選択します。

  4. ListIDプロパティの入力フィールドの横にある参照(...)アイコンをクリックしてバインディングIDピッカーを起動し、ページ定義ファイルで公開されたリスト・バインディングを選択します。

  5. プロパティ・インスペクタで、コンポーネントの外観、設計およびレイアウトを決定する他のプロパティを構成します。ADF値リスト・コンポーネントのプロパティの詳細は、A.7項「ADF値リスト・コンポーネントのプロパティ」を参照してください。

  6. 「OK」をクリックします。


    注意:

    • コンポーネントのプロパティを後から変更するには、コンポーネントを配置するワークシートのセルを選択して、プロパティ・インスペクタを表示します。または、セルで右クリックして、「ADFコンポーネント・プロパティの編集」を選択し、プロパティ・インスペクタを開きます。

      コンポーネントを削除するには、「削除」リボン・コマンドを使用します。詳細は5.14項「ADFデスクトップ統合コンポーネントの削除」を参照してください。

    • Excelフォームは、フォームのバインド・イテレータに行が存在しないと予想される場合は、モデルドリブン・リスト・バインディングを使用するADF値リスト・コンポーネントを使用するようには構成できません。解決策として、かわりに動的なリスト・バインディングを使用するように、ADF値リスト・コンポーネントを構成できます。


6.7 ADFイメージ・コンポーネントの挿入

ADFイメージ・コンポーネントを使用して、統合Excelワークシートにイメージ(企業のロゴなど)を挿入できます。設計時にSourceにイメージ・ファイルのURLを指定すると、ADFイメージ・コンポーネントが実行時にイメージをレンダリングします。イメージは、実行時に元のサイズでレンダリングされます。

実行時に、イメージ・コンポーネントがレンダリングされるときに、ADFデスクトップ統合によってSourceプロパティ値が絶対URLか相対URLかが判断されます。ソースURLは、httpおよびhttpsで開始する場合は絶対とみなされます。これらのスキームのみサポートされます。URLが絶対の場合は、イメージをフェッチするためにそのまま使用され、そのイメージがワークシートに挿入されます。URLが絶対でない場合、部分的なURIがワークブックのWebAppRootの相対と想定されます。このような場合、WebAppRoot値およびSource値は完全なイメージURLを形成するために連結されます。何らかの理由(無効なURLなど)でイメージのフェッチと挿入の試行に失敗した場合は、ログ・エントリが作成されます。失敗に関する技術的な詳細は、クライアント・ログにレポートされます。ワークシートの初期化は中断されず、エンド・ユーザーに対して警告またはエラー・メッセージは表示されません。エンド・ユーザーには、イメージが表示されるセル位置にイメージの短い説明が表示されます。

図6-12に、設計時のEditCustomers-DT.xlsxのADFイメージ・コンポーネントを示します。

図6-12 設計モードのADFイメージ・コンポーネント

この図は周囲のテキストで説明しています

ADFイメージ・コンポーネントを挿入する手順:

  1. 統合Excelワークブックを開きます。

  2. コンポーネントを配置するExcelワークシートのセルを選択します。

  3. コンポーネント・パレットで「ADFイメージ」を選択して、「コンポーネントの挿入」をクリックします。または、「Oracle ADF」タブで、「コンポーネントの挿入」ドロップダウン・リストから「ADFイメージ」を選択します。

  4. プロパティ・インスペクタで、コンポーネントの外観、レイアウトおよび動作を決定するプロパティを構成します。表6-3は、値を指定する必要のあるいくつかのプロパティの概要を示します。このコンポーネントの他のプロパティの詳細は、A.8項「ADFイメージ・コンポーネントのプロパティ」を参照してください。

    表6-3 ADFイメージ・コンポーネントのプロパティ

    プロパティ 指定する内容

    Source

    イメージ・ファイルのURL。

    絶対または相対URLをイメージのソースとして使用できます。URLが絶対でない場合、部分的なURIがワークブックのWebAppRootの相対と想定されます。

    例:

    /images/myLogo.png

    /resourceServlet?image=myLogo

    http://www.oracle.com/ocom/groups/public/@otn/documents/digitalasset/110224.gif

    Sourceプロパティでは、EL式はサポートされません。

    サポートされるイメージ形式のリストは、Microsoft Excelのドキュメントを参照してください。

    ShortDesc

    イメージが見つからないかレンダリングできない場合のイメージの代替テキストとしての文字列メッセージ。イメージ・コンポーネントの代替テキストに解決されるEL式も指定できます。

    ShortDescプロパティでは、バインディング式はサポートされません。


  5. 「OK」をクリックします。


    注意:

    コンポーネントのプロパティを後から変更するには、コンポーネントを配置するワークシートのセルを選択して、プロパティ・インスペクタを表示します。または、セルで右クリックして、「ADFコンポーネント・プロパティの編集」を選択し、プロパティ・インスペクタを開きます。

    コンポーネントを削除するには、「削除」リボン・コマンドを使用します。詳細は5.14項「ADFデスクトップ統合コンポーネントの削除」を参照してください。


図6-13に、実行時のADFイメージ・コンポーネントの例を示します。

図6-13 実行時のADFイメージ・コンポーネント

この図は周囲のテキストで説明しています

注意:

ワークシートが保護されていない場合、エンド・ユーザーは実行時にイメージをサイズ変更または移動できます。イメージのサイズによっては、他のADFデスクトップ統合コンポーネントなど、他のワークシート・コンテンツの上に表示され、そのコンテンツを非表示にすることがあります。


6.8 エラー・コンポーネントの挿入

ADFデスクトップ統合では、ADF出力テキスト(ワークシート・エラー)およびADF出力テキスト(表エラー)という2つのエラー・コンポーネントが提供されており、それぞれ統合ExcelワークシートおよびADF表コンポーネントによって生成されるエラー詳細を表示するために使用できます。

どちらのエラー・コンポーネントでも、ADF出力テキスト・コンポーネントを使用してエラー・メッセージを表示します。ADF出力テキスト(ワークシート・エラー)コンポーネントはワークシート・エラーを表示するように自動的に構成され、ADF出力テキスト(表エラー)は表エラーを表示するように自動的に構成されます。

エラー・コンポーネントを挿入する手順:

  1. 統合Excelワークブックを開きます。

  2. コンポーネントを配置するExcelワークシートのセルを選択します。

  3. コンポーネント・パレットで、ADF出力テキスト(ワークシート・エラー)またはADF出力テキスト(表エラー)を選択し、「コンポーネントの挿入」をクリックします。

    現在のワークシートに1つの表コンポーネントのみ含まれる場合、ADF出力テキスト(表エラー)では表のすべてのエラー・メッセージが自動的に表示されます。

    現在のワークシートに複数の表コンポーネントが含まれる場合は、コンポーネントの追加操作に進む前に表の選択を求められます。「表の選択」ダイアログでADF出力テキスト(表エラー)コンポーネントに関連付ける表のIDを選択し、「OK」をクリックします。ADF出力テキスト(表エラー)コンポーネントを挿入するには、ワークシートに少なくとも1つのADF表コンポーネントが含まれている必要があります。

    または、「Oracle ADF」タブで、「コンポーネントの挿入」ドロップダウン・リストからADF出力テキスト(ワークシート・エラー)またはADF出力テキスト(表エラー)を選択します。

  4. 必要に応じて、プロパティ・インスペクタでコンポーネントのプロパティを構成します。

  5. 「OK」をクリックします。


    注意:

    コンポーネントのプロパティを後から変更するには、コンポーネントを配置するワークシートのセルを選択して、プロパティ・インスペクタを表示します。または、セルで右クリックして、「ADFコンポーネント・プロパティの編集」を選択し、プロパティ・インスペクタを開きます。

    コンポーネントを削除するには、「削除」リボン・コマンドを使用します。詳細は5.14項「ADFデスクトップ統合コンポーネントの削除」を参照してください。


6.8.1 エラー・コンポーネントに関する必知事項

ADF出力テキスト(ワークシート・エラー)コンポーネント

ワークシートで起動されたアクション・セットによって生成されたワークシートのエラー・メッセージ・サマリーを表示するために、ADF出力テキスト(ワークシート・エラー)コンポーネントは#{worksheet.errors}をADF出力テキスト・コンポーネントのValueプロパティに設定されたEL式として使用します。実行時には、アクション・セットが起動を開始すると、以前のエラー・メッセージ概要があればクリアされます。起動時にエラーが発生しない場合、エラー・メッセージは空白のままです。エラーが発生した場合、ADF出力テキスト・コンポーネントによってエラー・メッセージ概要が表示されます。

ADF出力テキスト(ワークシート・エラー)コンポーネントは、DisplayWorksheetErrorsアクションをDoubleClickActionSetアイテムとして使用するように事前に構成されています。

図6-14に、設計時のADF出力テキスト(ワークシート・エラー)コンポーネントを示します。

図6-14 設計モードのADF出力テキスト(ワークシート・エラー)コンポーネント

この図は周囲のテキストで説明しています

実行時にADF出力テキスト・コンポーネントをダブルクリックすると、図6-15に示すようにDisplayWorksheetErrorsアクションが起動します。

図6-15 ADF出力テキスト(ワークシート・エラー)コンポーネントの実行時ビュー

この図は周囲のテキストで説明しています

ワークシートのDisplayWorksheetErrorsアクションの詳細は、A.16項「ワークシートのアクションとプロパティ」を参照してください。

ADF出力テキスト(表エラー)コンポーネント

ユーザーが表アップロード・バッチ・コミット操作中に発生するエラーの詳細を表示できるようにするために、ADF出力テキスト(表エラー)コンポーネントは、#{components.tableID.errors}をADF出力テキスト・コンポーネントのValueプロパティに設定されたEL式として使用します。実行時には、アクション・セットが起動を開始すると、以前のエラー・メッセージ概要があればクリアされます。起動時にエラーが発生しない場合、エラー・メッセージは空白のままです。エラーが発生した場合、ADF出力テキスト・コンポーネントによってエラー・メッセージ概要が表示されます。

ADF出力テキスト(表エラー)コンポーネントは、ADF表コンポーネントのDisplayTableErrorsアクションをDoubleClickActionSetアイテムとして使用するように事前に構成されています。

図6-16に、設計時のADF出力テキスト(表エラー)コンポーネントを示します。

図6-16 設計モードのADF出力テキスト(表エラー)コンポーネント

この図は周囲のテキストで説明しています

実行時にADF出力テキスト・コンポーネントをダブルクリックすると、図6-17に示すようにDisplayTableErrorsアクションが起動します。

図6-17 DisplayTableErrorsアクションの実行時の表示

この図は周囲のテキストで説明しています

ADF表コンポーネント・アクションの詳細は、A.12項「ADF表コンポーネントのプロパティとアクション」を参照してください。

6.9 ADFデスクトップ統合フォーム・タイプ・コンポーネントでのツールチップの表示

ツールチップを使用して、コンポーネントのヒントまたは指示テキストを表示できます。ツールチップは、コンポーネントを配置するセルの「コメント」ウィンドウに表示されます。

コンポーネントがバインディング要素から作成される場合、ツールチップはモデルドリブン・ツールチップに自動的に設定され、そうでない場合は空になります。ツールチップは、ADFラベル・コンポーネントに対しては最初は常に空であり、ADFボタン・コンポーネントには適用されません。

コンポーネントのTooltipプロパティにヒントまたは指示テキストを入力できます。ツールチップ・テキストに評価されるEL式(リソース式を含む)も指定できます。


注意:

ADFデスクトップ統合では、EL式でtoolTip属性コントロール・ヒントもサポートされます。サポートは、付録B「ADFデスクトップ統合のEL式」表B-3で説明されているmandatoryコントロール・ヒントと同様です。


挿入されたフォームタイプ・コンポーネントにツールチップを追加する手順:

  1. 統合Excelワークブックを開きます。

  2. フォームタイプ・コンポーネントがExcelワークシートにすでに挿入されている場合は、コンポーネントを選択し、「Oracle ADF」タブで「プロパティの編集」をクリックします。

    コンポーネントをワークシートに挿入するには、コンポーネントを配置するセルを選択します。コンポーネント・パレットまたはバインディング・パレットで、フォームタイプ・コンポーネントまたはバインディングを選択し、「コンポーネントの挿入」または「バインディングの挿入」をクリックします。

  3. プロパティ・インスペクタで、Tooltipプロパティの参照(...)アイコンをクリックし、ツールチップ・メッセージを入力します。

    コンポーネントがバインディング要素から作成される場合、Tooltipプロパティはモデルドリブン・ツールチップに設定されます。必要に応じて、ツールチップ・メッセージまたはEL式を構成および変更できます。コンポーネントがバインディング要素から作成されていない場合、プロパティは空になります。

    図6-18に、入力テキスト・コンポーネントのTooltipプロパティを示します。

    図6-18 入力テキスト・コンポーネントのTooltipプロパティ

    この図は周囲のテキストで説明しています
  4. 「OK」をクリックします。

図6-19に、実行時のEditWarehouses-DT.xlsx「電話」フィールドのツールチップ・メッセージを示します。入力テキスト・コンポーネントの右上にある小さな赤い矢印に注意してください。これは、コンポーネントまたはセルにコメントがあることを示します。マウス・ポインタをコンポーネントに合せると、ツールチップ・メッセージが表示されます。

図6-19 実行時の入力テキスト・コンポーネントのツールチップ・メッセージ

この図は周囲のテキストで説明しています

6.9.1 ツールチップに関する必知事項

ツールチップは1回のみレンダリングされ、Worksheet.DownSyncをコールした後は更新されません。

設計時に、コメントをセルまたはコンポーネントに手動で挿入した場合、ADFデスクトップ統合は実行時にそれをオーバーライドします。古いコメントは削除され、コンポーネントのツールチップ・メッセージで置換されます。テスト・モードから設計時モードに戻ると、各コンポーネントが設計時の外観用にレンダリングされるときに、手動で挿入したすべてのExcelコメントが削除されます。

実行時に、Tooltipプロパティが空でない場合、式が評価され、結果のテキストの空白がトリムされます。最終値が空でない場合は、その値がターゲット・セルにExcelコメントとして挿入されます。

コンポーネントがマージされたセル範囲に配置される場合、ツールチップはマージされた範囲の右上隅に表示されます。

ツールチップを表の列(7.18.1項「表の列のツールチップに関する必知事項」)およびワークシートのリボン・コマンド(8.3.2項「実行時リボン・タブのワークシート・コマンド・ボタンの構成方法」)に追加することもできます。


注意:

  • ツールチップは、保護されたワークシートでは編集できません。

  • リボン・コマンド・ツールチップには、1024文字の最大サイズがあります。ツールチップ値がこの制限を超えた場合は、最初の1024文字のみ表示されます。

  • Excelコメントが無効になっている場合、フォーム・コンポーネントと表ヘッダーのツールチップはレンダリングされません。

  • ツールチップが過剰に使用されると、実行時のパフォーマンスに影響することがあります。


6.10 ADFコンポーネントのマネージドBeanからの出力の表示

ADFコンポーネントを構成して、マネージドBeanからの出力をFusion Webアプリケーションで表示できます。Fusion WebアプリケーションでマネージドBeanを使用する方法の詳細は、Oracleアプリケーション開発フレームワークを使用したFusion Webアプリケーションの開発のFusion WebアプリケーションのマネージドBeanの使用に関する項を参照してください。統合Excelワークブック内のマネージドBeanはEL式を通じて参照します。Excelワークシートに関連付けるページ定義ファイルにメソッド・アクション・バインディングを追加して、マネージドBeanの値を取得し、それを属性バインディングに割り当てます。EL式を使用して、実行時に属性バインディングの値を取得します。

6.10.1 マネージドBeanからの出力の表示方法

EL式は、EL式をサポートするプロパティ(Labelプロパティなど)に記述します。

開始する前に:

マネージドBeanに関する知識が役立つ場合があります。詳細は、6.10項「ADFコンポーネントのマネージドBeanからの出力の表示」を参照してください。

他のADFデスクトップ統合の機能を使用して追加できる機能についても理解しておくと役立ちます。詳細は、6.1.2項「ADFデスクトップ統合フォーム・タイプ・コンポーネントの追加機能」を参照してください。

マネージドBeanからの出力を表示するには:

  1. 統合Excelワークブックを開きます。

  2. マネージドBeanからの出力を表示するADFコンポーネントを選択し、そのプロパティ・インスペクタを開きます。

    図6-20に、ADFラベル・コンポーネントが、アクション・バインディングにより移入された値を持つ属性バインディングからの出力を表示するように構成されている例を示します。

    図6-20 実行時にマネージドBeanからの出力を表示するADFラベル・コンポーネント

    この図は周囲のテキストで説明しています
  3. 実行時にマネージドBeanからの出力を取得するEL式を記述します。

    図6-20の例は、resリソース・バンドルからの文字列キー(excel.connectionPrefix)の値とloggedInUser属性バインディングの値を取得するEL式を示します。この属性バインディングは、マネージドBeanからの出力を参照します。

  4. 「OK」をクリックします。

6.10.2 実行時の処理: ADFコンポーネントによるマネージドBeanからの出力の表示

メソッド・アクション・バインディングは、マネージドBeanからの値を取得して属性バインディングに移入します。記述するEL式は、属性バインディングからの値を取得し、出力を表示するように構成したADFコンポーネントを通じてそれをエンド・ユーザーに表示します。たとえば、図6-21に示す設計モードのADFラベル・コンポーネントは、実行時に次のような文字列を表示します。

Connected as sking

図6-21 実行時のマネージドBeanからの出力

この図は周囲のテキストで説明しています

図6-21では、skingは統合Excelワークブックを介してFusion Webアプリケーションにログオンしているユーザーのユーザー名です。

6.11 コンポーネント内での連結または計算されたデータの表示

ADFデスクトップ統合モジュールは、コンポーネント内で、1つのコンポーネントにより、計算または複数のバインディング式の連結に基づいたデータを表示可能なEL式をサポートしています。

6.11.1 計算されたデータを表示するようにコンポーネントを構成する方法

EL式は、入力テキストまたは出力テキスト・コンポーネントのValueプロパティに対して記述します。

図6-22に、ADF出力テキスト・コンポーネントが2つのフィールド、List PriceおよびCost Price間のマージンを表示するように構成されているEL式の例を示します。

図6-22 計算されたデータを表示するADF出力テキスト・コンポーネント

この図は周囲のテキストで説明しています

開始する前に:

ADFコンポーネント内での連結または計算されたデータの表示方法を理解しておくと役立ちます。詳細は、6.11項「コンポーネント内での連結または計算されたデータの表示」を参照してください。

他のADFデスクトップ統合の機能を使用して追加できる機能についても理解しておくと役立ちます。詳細は、6.1.2項「ADFデスクトップ統合フォーム・タイプ・コンポーネントの追加機能」を参照してください。

計算されたデータを表示するEL式を作成するには

  1. 統合Excelワークブックを開きます。

  2. 計算されたデータを表示する、ADF入力テキストまたはADF出力テキストのコンポーネントを選択します。

  3. プロパティ・インスペクタを開き、Valueプロパティの参照(...)アイコンをクリックします。

  4. 2つ以上の式から出力を取得するEL式を記述します。

    図6-1は、2つのフィールド、List PriceとCost Priceの値の差異を計算し、それをCost Price列の値で割ってマージンを生成するEL式を示しています。

    例6-1 計算されたデータ用のEL式

    =(("#{row.bindings.ListPrice.inputValue}"-"#{row.bindings.CostPrice.inputValue}")/"#{row.bindings.CostPrice.inputValue}")
    
  5. 「OK」をクリックします。

EL式の詳細は、付録B「ADFデスクトップ統合のEL式」を参照してください。


注意:

ADF入力テキスト・コンポーネントのValueプロパティに式が含まれる場合、ReadOnlyプロパティの値に関係なく、ADF入力テキスト・コンポーネントは実行時に読取り専用となります。


6.12 ナビゲーション・ボタンの使用

図6-23に示すような、あるレコードから別のレコードに移動するためのナビゲーション・ボタン(次、前へ、最初へ、最後)を作成できます。別のレコードに移動する前にエンド・ユーザーがレコードのデータを変更した場合、それらの変更を保存するか、または無視するかを選択できます。

図6-23 統合Excelワークブックのナビゲーション・ボタン

この図は周囲のテキストで説明しています

別のレコードに移動する前に変更を保存し、次の順序でボタンのアクション・セットを定義するには:

  1. Worksheet.UpSync

  2. Commit

  3. ナビゲーション・アクション(例: 「次」)

  4. Worksheet.DownSync


注意:

アクション・セットからCommitアクションを省略すると、複数のレコードに対する保留中のすべての変更は、エンド・ユーザーのWebアプリケーション・セッションが終了するときに失われます。


別のレコードに移動する前に変更を無視し、次の順序でボタンのアクション・セットを定義するには:

  1. ナビゲーション・アクション(例: 「次」)

  2. Worksheet.DownSync


注意:

変更を無視するボタン・アクションを定義する場合、別のレコードに移動する前に変更を保存することはエンド・ユーザーの役割となります。