EditDept_LOVワークブックには、LOVフィールドや挿入/更新/削除機能のある表が含まれています。また、ワークブック内のExcelリボンにリボン・コマンドを追加します。
-
ナビゲータで、「ViewController」プロジェクトを右クリックして、コンテキスト・メニューから「New」→「From Gallery...」を選択します。New GalleryでClient Tierノードが開かれていない場合はこれを開き、「ADF Desktop Integration」を選択します。ItemsペインでMicrosoft Excel Workbookが自動的にハイライトされるため、「OK」をクリックしてこのワークブックを選択します。
-
ワークブックの名前としてEditDept_LOV_src.xlsxを入力し、「OK」をクリックします。
-
Excelが開くと、Oracle ADF Desktop Integrationがロードされます。Page Definitionダイアログで、「ADFdi_view_EditTable_LOVPageDef」ページ定義を選択します。
また、ApplicationsウィンドウにもEditDept_LOV_src.xlsxが表示されます。
-
Excelに戻ると、ADF Desktop Integrationのバインディング・ペインに、ページ定義から利用できるバインディングが表示されます。
-
ワークシートでセルを1つ選択し、Bindingsタブで「DepartmentsView1」を選択し、「Insert Binding」をクリックします。
-
Select Componentダイアログで、「ADF Table」を選択します。「OK」をクリックします。
-
Insert Component:ADF Tableダイアログで、「OK」をクリックしてデフォルト値を受け入れます。
-
Excelワークシートが、次のように表示されます。
編集可能な表であるため、情報を表示するために最初の3列と最後の1列(キー列)が自動的に生成されています。
-
「」Saveアイコンをクリックしてワークブックを保存します。
新しいOracle ADF Desktop Integration対応ワークブックを作成します。
ワークブックをExcelで開きます。
ワークシートのページ定義を選択します。
ワークシートにバインディングを追加します。
ワークシートに追加するコンポーネントを選択します。
EditTable_LOV.jspxページに対するデータ・バインディングのスクリーンショットに含まれる各種のバインディングに注目してください。これらのアクション・バインディングは、JSFページに含まれるボタン・アクションを表しています。
-
ExcelリボンのOracle ADFタブで、「Workbook Properties」ボタンをクリックします。
-
Edit Workbook PropertiesダイアログのWebAppRootフィールドの横に、先ほどと同じようにhttp://127.0.0.1:7101/ADFdi_BCと入力し、「OK」をクリックします。このURLは、ワークブックが統合されるFusion WebアプリケーションのURLです。
-
Excelワークシートに表示された表の左上のセル(C3)を選択し、ExcelリボンにあるOracle ADFタブのADF Componentsグループで「」Edit Propertiesアイコンをクリックします。
-
Edit Component:ADF Tableダイアログで、「RowActions」ノードを開き、DeleteRowActionIDフィールドの横にある「」moreボタンをクリックします。
-
Select Bindingダイアログで、「Delete (action)」を選択し、「OK」をクリックします。
-
InsertBeforeRowActionIDフィールドに対して前のステップを繰り返し、「CreateInsert (action)」を選択します。
「OK」をクリックします。
-
RowActionsセクションで、ドロップダウン・リストから次の値を追加で設定します。
オプション 値 DeleteRowEnabled True InsertRowEnabled True UpdateRowEnabled True RowActionsのプロパティは、次のように表示されます。
-
BatchOptionsセクションで、CommitBatchActionIDの値をCommitに設定し、「OK」をクリックします。
-
Edit Componentダイアログで、Columnsフィールドの隣にある「」moreボタンをクリックします。
-
Membersペインで列番号6(LocationId)を選択し、UpdateComponentフィールドの横にある「」moreボタンをクリックします。
-
Select Componentダイアログで「TreeNodeList」を選択し、「OK」をクリックします。
-
列番号3(DepartmentId)を選択し、「UpdateComponent」ノードを開きます。ReadOnlyプロパティを「True」に変更します。
-
列番号3(DepartmentId)を引き続き選択した状態で、CellStyleNameフィールドにある「more」ボタンをクリックします。
-
Edit Expressionダイアログで、「Styles」ノードを開きます。
-
「_ADFDI_TableCellROStyle」(列が読取り専用であることを視覚的に示すスタイル)を選択し、「Insert Into Expression」をクリックします。
「OK」をクリックし、もう一度「OK」をクリックします。
-
Excelワークブックを保存します。
たとえば、このステップでDeleteを選択すると、DeleteFlaggedRowsの実行中に各フラグ付き行に対して呼び出されるアクション・バインディングを定義できます。この後説明するステップでは、ワークシートに含まれるその他の行の動作を定義します。
この要件を実現するには、(このステップで設定したように)ReadOnlyプロパティをTrueに設定し、またフィールドの更新ができないことをユーザーに対して視覚的に示すスタイルをDepartmentIdフィールドに適用します。
-
Oracle ADFタブで、「Worksheet Properties」ボタンをクリックします。 「Ribbon Commands」フィールドを選択し、「」moreボタンをクリックします。
-
Edit Ribbon Commandsダイアログで「Add」をクリックします。
-
右側のペインで「SelectActionSet」ノードを開き、Actionsフィールドの横にある「」moreボタンをクリックします。
-
Action Collection Editorダイアログで、Addボタンの三角マークをクリックして、ドロップダウン・リストから「ADFmAction」を選択します。
-
ADFmActionプロパティのEdit Actionsダイアログで、ActionIDフィールドの横にある「」moreボタンをクリックします。
-
Select Bindingダイアログで「Execute」を選択し、「OK」をクリックします。
-
Edit Actionsダイアログに戻り、DesignのAnnotationフィールドにRun queryと入力します。
-
Edit Actionsダイアログで、「Add」ボタンをクリックしてドロップダウン・リストから「ComponentAction」を選択します。
-
Actionフィールドの横にある「」moreボタンをクリックします。
-
Choose Component Actionダイアログで、「Download」を選択し、「OK」をクリックします。
-
Edit Actionsに戻り、DesignのAnnotationフィールドにDownloadと入力し、「OK」をクリックします。
-
Edit Ribbon Commandsダイアログに戻り、LabelフィールドにQueryと入力します。
「OK」をクリックし、再度「OK」をクリックします。
-
「」Saveボタンをクリックして、Excelワークブックを保存します。
また、ラベルにリソース式を作成して、'ローカライズ'アプリケーションを作成することもできます。
-
Oracle ADFタブで、「Worksheet Properties」ボタンをクリックします。
-
Edit Worksheet Propertiesダイアログで「Ribbon Commands」フィールドを探し、「more」ボタンをクリックします。
-
Edit Ribbon Commandsダイアログで「Add」をクリックします。
-
右側のペインで、Actionsフィールドの横にある「」moreボタンをクリックします。
-
Addボタンの三角マークをクリックし、ドロップダウン・リストから「Confirmation」を選択します。
-
Dataセクションに、次の値を入力します。
プロパティ 値 Prompt Are you sure you want to delete these rows? Title Delete Departments
ラベル・プロパティの定義。
この例では、リソース式(OKButtonLabel)やリテラル値(Title)を使用してラベルを表示できることを示しています。
ローカライズ・アプリケーションに対しては、リソース式の手法を使用します。 -
Addボタンの三角マークをクリックし、ドロップダウン・リストから「ComponentAction」を選択します。
-
Action Collection Editorダイアログで、Actionフィールドの隣にある「」moreボタンをクリックします。
-
Choose Component Actionダイアログで、「DeleteFlaggedRows」を選択します。
「OK」をクリックし、もう一度「OK」をクリックします。 -
Edit Ribbon Commandsで、LabelフィールドにDelete Flaggedと入力します。
「OK」をクリックします。再度「OK」をクリックします。
作業内容を保存します。
-
Oracle ADFタブで、「Worksheet Properties」ボタンをクリックします。
-
「Ribbon Commands」フィールドを選択し、「more」ボタンをクリックします。
-
Edit Ribbon Commandsダイアログで「Add」をクリックします。
-
右側のペインで、Actionsフィールドの横にある「」moreボタンをクリックします。
-
Edit Actionsダイアログで、「Add」ボタンをクリックしてドロップダウン・リストから「ComponentAction」を選択します。
-
Edit Actionsダイアログで、Actionフィールドの横にある「」moreボタンをクリックします。
-
Choose Component Actionダイアログで、「Upload」を選択します。「OK」をクリックします。
再度「OK」をクリックします。
-
Edit Ribbon Commandsダイアログで、LabelフィールドにUploadと入力し、「OK」をクリックします。
-
以上で、ワークシートには3つのリボン・コマンドが定義されました。
「OK」をクリックします。
-
ワークブックを保存「」します。
-
Excelリボンの「Oracle ADF」タブをクリックします。
-
Testグループにある「Run」ボタンをクリックします。
Validateボタンの使用。
ワークシートを実行する前に「Validate」ボタンをクリックすると、ワークブックに含まれる構成の問題を発見し、修正できます。
-
ワークブックに、まだデータが移入されていないADF表がロードされ、表示されます。
-
ExcelリボンでOracle ADFタブの右側に表示されている「MyWorkbook」タブをクリックします。
-
作成が済んだ3つのコマンドが、Worksheetグループに表示されます。これらのコマンドは3つのリボン項目にそれぞれ対応します。
「Query」ボタンをクリックします。 -
取得したデータが、ワークシートに表示されます。
-
新しい行を追加します。ワークシート内の任意の箇所を右クリックし、コンテキスト・メニューから「Insert」を選択します。
Insertダイアログで「Entire Row」を選択し、「OK」をクリックします。
-
新しい部門名(New Sales)を入力し、ドロップダウン・リストから都市を選択します。
-
新しい行では、自動的にChanged列にフラグが付けられています。
-
既存の行に対して、ドロップダウン・リストを使用して場所を変更してみます。
-
Excelリボン内に新しく作成した「Upload」コマンド項目をクリックし、変更を保存します。
Upload Optionsダイアログで、「Download all rows after successful upload」チェック・ボックスを選択します。Changed列に行の更新を示すフラグが2ヶ所付いていることに注意します。
-
新しい行が挿入され、部門IDが生成されて、フラグが削除されていることを確認します。
-
直前に挿入した行の「Flagged」列をダブルクリックします。
-
「Delete Flagged」ボタンをクリックします。
-
先ほど作成したDelete Confirmationダイアログで、「Yes」をクリックします。
-
ワークシートが更新されます。
-
「Oracle ADF」タブをクリックしてから「Stop」ボタンをクリックし、設計モードに戻ります。
Fusion Webアプリケーションに統合され、データベースからのデータの挿入、更新、削除を行うことができる、完全な機能を備えたワークブックの作成が完了しました。このチュートリアルの次のパートでは、ワークブックの公開について説明します。