パート3:より高度なOracle ADF Desktop Integration対応Excelワークブックの開発
パート2では、Fusion Webアプリケーションに統合される基本的なExcelワークブックを作成しました。 チュートリアルのこのパートでは、そのワークブックに高度な機能を追加して、より機能的なワークブックを作成します。
Show more or less詳細を読む

EditDept_LOVワークブックには、値フィールのリスト、および挿入/更新/削除機能のある表が含まれています。 また、このワークブックで、Excelリボンにメニュー項目を追加します。

ステップ1:EditDept_LOVワークブックの作成
  1. ナビゲータで、「ViewController」プロジェクト を右クリックして、コンテキスト・メニューから「New...」を選択しま す。 New Galleryで、まだ展開されていない場合は「Client Tier」ノードを展開し、「ADF Desktop Integration」を選択します。 Itemsペインで、Microsoft Excelワークブックが自動的にハイライトされるので、「OK」をクリックしてこのワークブックを選択します。

    alt text
  2. EditDept_LOVワークブックを作成する最初のステップには、前のワークシートを作成したときとまったく同じタスクが含まれています。 Show more or less詳細を読む

    新しいOracle ADF Desktop Integration対応ワークブックを作成します。

    ワークブックをExcelで開きます。

    ワークシートのページ定義を選択します。

    ワークシートにバインディングを追加します。

    ワークシートに追加するコンポーネントを選択します。

  3. ワークブックの名前としてEditDept_LOV_src.xlsxを 入力し、「OK」をクリックします。

    alt text
  4. アプリケーション・ナビゲータで、「EditDept_LOV_src.xlsx」 をダブルクリックしてMicrosoft Excelで開きます。

    alt text
  5. Excelが開くと、Oracle ADF Desktop Integrationがロードされます。 Page Definitionダイアログで、「ADFdi_view_EditTable_LOVPageDef」ページ定義を選択しま す。

    alt text
  6. Excel内にADFdiタスク・ペインが開き、ページ定義の利用可能なバインディングが表示されます。

  7. 前のステップで選択したページ定義(ADFdi_view_EditTable_LOVPageDef)には、 このチュートリアルの前のパートでDepartmentsListワークブックを作成したときに使用したツリー・バインディングに加えて、数種類のバイン ディングが含まれています。Show more or less詳細を読む

    EditTable_LOV.jspxページに対応するデータ・バインディングのスクリーンショットには、さまざまなバインディングがありま す。アクション・バインディングは、JSFページに含まれるボタン・アクションを表しています。

  8. ワークシートが表示されているときに、セルを選択します。また、Bindingsタ ブで、「DepartmentsView1」を選択し、「Insert Binding」をクリックします。

    alt text
  9. Select Componentダイアログで、「ADF Table」 を選択します。 「OK」をクリックします。

    alt text
  10. Insert Component: ADF Tableダイアログで、「OK」 をクリックしてデフォルト値を受け入れます。

    alt text
  11. Excelワークシートが、次のように表示されます。

    alt text

    編集可能な表であるため、情報を表示するために最初の3列が自動的に生成されています。

  12. Saveアイコンをクリックしてワークブックを保存します。

ステップ2:ワークブック・プロパティと表プロパティの設定
  1. ExcelリボンのOracle ADFタブで、「Workbook Properties」リンクをクリックします。

    alt text
  2. Edit Workbook PropertiesダイアログのWebAppRootフィー ルドの横に、先ほどと同じようにhttp://127.0.0.1:7101/ADFdi_BCと 入力し、「OK」をクリックします。 このURLは、ワークブックが統合されるFusion WebアプリケーションのURLです。

    alt text
  3. Excelワークシートに表示された表の左上隅のセル(B2など)を選択し、ExcelリボンにあるOracle ADFタブのADF Componentsグループで「」プロパティ・アイコンをクリックします。

    alt text
  4. Edit Component: ADF Tableダイアログで、「RowActions」 ノードを展開し、DeleteRowActionIDフィールドの横にある「」moreボタンをクリックします。

    alt text
  5. Select Bindingダイアログで、「Delete (action)」 を選択し、「OK」をクリックします。

    alt text

  6. RowActionsの一連のプロパティは、ワークシート内にある表の行の動作を定義します。 Show more or less詳細を読む

    たとえば、このステップでは「Delete」を選択して、DeleteFlaggedRowsの実行中に各フラグ付き行に対して呼び出され るアクション・バインディングを定義します。 この後説明するステップでは、ワークシート内にある他の行の動作を定義します。
  7. InsertBeforeRowActionIDフィールドに 対して前のステップを繰り返し、「CreateInsert (action)」 を選択します。OK」をクリックします。

    alt text
  8. RowActionsセクションで、次のように値を設定しま す。

    DeleteRowEnabled True
    InsertRowEnabled True
    UpdateRowEnabled True

    RowActionsのプロパティは、次のように表示されます。

    alt text
  9. BatchOptionsセクションで、CommitBatchActionIDの 値を「Commit」に設定し、「OK」をクリックします。

    alt text
  10. Edit Componentダイアログで、Columnsフィー ルドの隣にある「moreボタンをクリックします。

    alt text
  11. Add」をクリックして新規列を追加してから、HeaderLabelフィールドの横にある「moreボ タンをクリックします。

    alt text
  12. Edit Expressionダイアログで、「bindings」 →「DepartmentsView1」→「DepartmentsView」→「hints」→「LocationId」 →「label」の順に展開し、「Insert Into Expression」ボタンをクリックします。

    alt text

    OK」をクリックします。

  13. これで、ワークシート内に新しい列を作成して"LocationId"ラベルにバインドする作業が完了しまし た。 Show more or less詳細を読む ただし、表には、 データ・バインドされたLocationId列がすでに存在していました... 新しい列を作成する理由は、値のリストと機能を列に追加できるようにするためです。 この作業は、この後説明するステップで行います。 そして最後に、元からあったLocationId列を削除します。
  14. UpdateComponentフィールドの横にある「moreボタンをクリックします。

    alt text
  15. Select subcomponent to createダイアログで、「TreeNodeList」 を選択して「OK」をクリックします。

    alt text
  16. UpdateComponent」ノードを展開し、Listフィールドの横の「moreボ タンをクリックします。

    alt text
  17. Select Tree Binding Attributeで、「LocationId」 を選択して「OK」をクリックします。

    alt text
  18. 列番号「6」を選択し、「Remove」ボタンをクリックして元の LocationId列を削除します。次に、値のリストをサポートしている新規列で置き換えます。

    alt text
  19. 列番号「3」(DepartmentId) を選択し、「UpdateComponent」ノードを展開します。 ReadOnlyプロパティを「True」 に変更します。

    alt text


  20. 実際に設計するアプリケーションでは、部門IDをユーザーが変更できないようにする必要があります。 Show more or less詳細を読む この要件を実現するには、(このステップで設定したのと同じように)ReadOnlyプロパティを「True」に設定し、またフィールドの 更新ができないことをユーザーに対して視覚的に示すスタイルをDepartmentIdフィールドに適用します。
  21. 列番号「3」(DepartmentId) を引き続き選択した状態で、CellStyleNameフィールドにある「more」ボタンをクリックします。

    alt text
  22. Edit Expressionダイアログで、「Styles」ノードを展開します。

    alt text
  23. _ADFDI_TableCellROStyle」(列が読 取り専用であることを視覚的に示すスタイル)を選択し、「Insert Into Expression」をクリックします。

    alt text

    OK」をクリックし、さらにもう一度「OK」 をクリックして、Edit Componentダイアログを閉じます。

  24. Excelワークブックを保存します。

ステップ3:Queryリボン・コマンドの定義
このステップでは、ワークシートの上部にあるExcelリボンにコマンド項目を追加します。 Show more or less詳細を読む DepartmentsList ワークシートでは、起動時にデータがワークシートにダウンロードされるように指定しました。 ここでは、ユーザーがワークシートにデータを移入するためにクリックする必要があるリボン・コマンドを作成します。
  1. Oracle ADFタブで、「Worksheet Properties」 ボタンをクリックします。 「Ribbon Commands」フィールドを 選択し、「more」ボタンをクリックします。

    alt text
  2. WorksheetMenuItem Collection Editor で、「Add」をクリックします。

    alt text
  3. 右側のペインで、Actionsフィールドの横にある「moreボタンをクリックします。

    alt text
  4. Action Collection Editorダイアログで、「Add」 ボタンをクリックしてドロップダウン・リストから「ADFmAction」を 選択します。

    alt text
  5. ADFmActionのプロパティで、ActionIDフィールドの横にある「moreボタンをクリックします。

    alt text
  6. Select Bindingダイアログで、「Execute」 を選択し、「OK」をクリックします。

    alt text
  7. Action Collection Editorに戻り、DesignAnnotationフィールドにRun queryと入力します。

    alt text
  8. Action Collection Editorダイアログで、「Add」 ボタンをクリックしてドロップダウン・リストから「ComponentAction」 を選択します。

    alt text
  9. Actionフィールドの右端にある「moreボ タンをクリックします。

    alt text
  10. Choose Component Actionダイアログで、「Download」 を選択し、「OK」をクリックします。

    alt text
  11. Action Collection Editorに戻り、DesignAnnotationフィールドにDownloadと 入力し、「OK」をクリックします。

    alt text
  12. WorksheetMenuItem Collection Editorに戻り、LabelフィールドにQueryと入力します。

    alt text

    OK」をクリックし、もう一度「OK」をクリックします。

  13. "Query"は、Excelリボンに表示されるコマンド項目のラベルです。Show more or less詳細を読む ユーザーがQueryコマンド項目をクリックすると、ワークシート内の表にデータがダウンロードされます。
  14. Excelワークブックを保存します。

ステップ4:Delete Rowsリボン・コマンドの定義
    このステップでは、ワークシートの上部にあるExcelリボンにもう1つのコマンド項目を追加します。Show more or less詳細を読む ここで追加するリボン・コマンドは、表のフラグ付き行を削除するためのもので、アクションの実行前にユーザーに確認を求めます。
  1. Oracle ADFタブで、「Worksheet Properties」 ボタンをクリックします。 「Ribbon Commands」フィールドを 選択し、「more」ボタンをクリックします。

    alt text
  2. WorksheetMenuItem Collection Editorで、「Add」 をクリックします。

    alt text
  3. 右側のペインで、Actionsフィールドの横にある「moreボタンをクリックします。

    alt text
  4. Add」ボタンをクリックし、ドロップダウン・リストから「Confirmation」を選択します。

    alt text
  5. Dataセクションに、次の値を入力します。

    CancelButtonLabel Cancel
    OKButtonLabel Yes
    Prompt Are you sure you want to delete these rows?
    Title Delete Confirmation

    alt text

  6. Add」ボタンをクリックし、ドロップダウン・リストから「ComponentAction」を選択します。

    alt text
  7. ComponentActionのプロパティで、Actionフィー ルドの横にある「moreボタンをクリックします。

    alt text
  8. Choose Component Actionダイアログで、「DeleteFlaggedRows」 を選択します。

    alt text
  9. OK」をクリックし、もう一度「OK」をクリックします。

  10. WorksheetMenuItem Collection Editorで、Labelフィー ルドにDelete Flaggedと入力します。

    alt text

    OK」をクリックします。

ステップ5:Uploadリボン・コマンドの定義

    このステップでは、ワークシートの上部にあるExcelリボンにもう1つのコマンド項目を追加します。Show more or less詳細を読む ここで追加するコマ ンド項目は、表にデータをアップロードします。
  1. Oracle ADFタブで、「Worksheet Properties」 ボタンをクリックします。 「Ribbon Commands」フィールドを 選択し、「more」ボタンをクリックします。

    alt text
  2. WorksheetMenuItem Collection Editorで、「Add」 をクリックします。

    alt text
  3. 右側のペインで、Actionsフィールドの横にある「moreボタンをクリックします。

    alt text
  4. Action Collection Editorダイアログで、「Add」 ボタンをクリックしてドロップダウン・リストから「ComponentAction」 を選択します。

    alt text
  5. ComponentActionのプロパティで、Actionフィー ルドの横にある「moreボ タンをクリックします。

    alt text
  6. Choose Component Actionダイアログで、「Upload」 を選択します。 「OK」をクリックします。

    alt text

    もう一度「OK」をクリックします。

  7. WorksheetMenuItem Collection Editorで、Labelフィー ルドにUploadと入力し、「OK」をクリックします。

    もう一度「OK」をクリックします。

  8. ワークブックを保存し ます。

ステップ6:EditDept_LOVワークブックのテスト
  1. Excelリボンの「Oracle ADF」タブをクリックし ます。

    alt text
  2. Testグループにある「Run」ボタンをクリックします。

  3. ワークブックに、まだデータが移入されていないADF表がロードおよび表示されます。

    alt text
  4. Excelリボンで、Oracle ADFタブの右側に表示されている「MyWorkbook」タブをクリックします。

    alt text
  5. ここまでに作成した3つのコマンドが、Worksheetグループに表示されます。
    Query」ボタンをクリックします。

    alt text
  6. 取得したデータが、ワークシートに表示されます。

    alt text
  7. DepartmentId列は、他の列とは異なる色の網かけで表示されます。Show more or less詳細を読む これは読取り専用のスタイルで、更新できない列であることをユーザーに視覚的に示すためにDepartmentId列に適用されます。 このような視覚的効果は、アプリケーションのユーザビリティの大幅な向上を可能にします。
  8. ワークシートの最下部、つまり最終行の後に新しい行を挿入するために、空の行を右クリックしてコンテキスト・メニューから「Insert」を選択します。 新しい部門名を入力し、ドロップダウン・リストから都市を選択します。

    alt text
  9. Changed列では、新しい行に自動的にフラグが付きます。

    alt text
  10. 既存の行に対して、ドロップダウン・リストを使用して場所の変 更を試みます。

    alt text
  11. 新規に作成したUploadコマンド項目を、Excelリボン でクリックして、変更を保存します。

    alt text
  12. Upload Optionsダイアログで、「Download all rows after successful upload」チェック・ボックスを選択します。

    alt text
  13. 新しい行が挿入され、部門IDが生成されて、フラグが削除されます。

  14. 直前に挿入した行の「Flagged」列をクリックします。

    alt text
  15. Delete Flagged」ボタンをクリックします。

    alt text
  16. 先ほど作成したDelete Confirmationダイアログで、「Yes」 をクリックします。

    alt text
  17. ワークシートが更新されます。

    alt text
  18. Stop」ボタンをクリックしてデザイン・モードに戻りま す。

    alt text

    Fusion Webアプリケーションに統合され、データベースからのデータの挿入、更新、削除を行うことができる、完全な機能を備えたワークブックの作成が完了しまし た。 このチュートリアルの次のパートでは、ワークブックの公開について説明します。


Bookmark Print すべて表示 | 非表示
トップへ戻る

このページはお役に立ちましたでしょうか。



Copyright © 2011, Oracle. All rights reserved.