第3部:値のリスト(LOV)の追加

Oracle JDeveloperのIDEを操作して、静的LOVおよび動的LOVをページに追加します。

静的ビュー・オブジェクトの作成:Create View Objectウィザードを使用して、静的ビュー・オブジェクトをビジネス・サービスに追加します。

静的LOVの作成:Data Controlsパネルで Single SelectionADF SelectOneChoiceコンポーネントを 追加して、ページにLOVを作成します。

検索ビュー・オブジェクトの作成:Create View Objectウィザードを使用して、動的ビュー・オブジェクトをビジネス・サービスに追加します。

動的LOVの作成:Data Controlsパネルを使用して、動的LOVをページに追加します。

 

静的ビュー・オブジェクトの作成

tell me more icon静的ビュー・オブ ジェクトの作成

静的LOVは、設計時に一時属性が作成および移入されるビュー・オブジェクトに基づいています。 ビュー・オブジェクトを定義し、LOVに必要な静的値を移入して、LOVとして使用するビュー・オブジェクトに関連づけます。 [ 詳細はこちら]

  1. アプリケーション・ナビゲータで「 Model 」プロジェクトを選択 し、Create View Objectウィザードを起動します(「 File」→「 New」→「 Business Tier」→「 ADF Business Components」→「 View Object」)。
  2. ビュー・オブジェクトの名前として StatusCodesと入力します。
  3. Rows populated at design time (Static List) 」を選択して、「 Next 」を クリックします。
  4. ステップ2で、「 New 」をクリックします。 New View Object Attributeダイアログで、属性名として Statusと入力し、「 Key Attribute 」を選択します。 「 OK 」をクリックします。
  5. New 」を再度クリックします。 属性名として Descriptionと 入力し、「 Key Attribute 」を選択して「 OK 」をクリックします。 「 Next 」 を2回クリックします。
  6. ステップ4で、「  Addを7回クリックして、静的LOVを作成します。 Statusお よび Descriptionに値と説明を入力します。例を以下に示します。
                                 
    PENDING  Order has been submitted
                                  
    SHIP Order is being shipped
    PICK Order is being picked
    COMPLETE Order complete
    CANCEL Order was cancelled
    STOCK Order is waiting for stock
    CART Order is in cart
  7. Next 」をクリックして、 Application Moduleページを表示します。 「 Application Module 」 を選択して、新しいビューを FODModuleアプリケーション・モジュールに追加します。 「 Finish 」をクリックします。

    tell me more icon静的 LOVの定義

    ビュー・オブジェクトの静的リストを定義すると、Oracle JDeveloperにより、それらを格納する標準のメッセージ・バンドル・ファイルが作成されます。 ファイルは、関連するビュー・オブジェクト・コンポーネントに固有のものであり、適宜名前がつけられます。 Oracle ADF Business Componentsを使用して構築されたアプリケーションのモデル・レイヤーに関する国際化には、各コンポーネントのメッセージ・バンドル・ファイルの 翻訳バージョンの作成を必要とします。 たとえば、 ModelBundle.propertiesメッセージ・バンドルのイタ リア語版は、 ModelBundle_it.propertiesという名前のクラスになります。さらに、スイスで使用される イタリア語版は、 ModelBundle_it_ch.propertiesという名前になります。 [ 詳細はこちら]

  8. エディタ・ウィンドウで、「 OrdersView.xml 」タブを クリックして、ページを前面に表示します。次に、「 View Accessors 」 タブを選択します。
  9. StatusCodesビュー・オブジェクトを設定するには、「  Addをクリックします。 Available View Objects ペインの「 StatusCodes 」を 選択して、 View Accessorsペインへ移動します。 「 OK 」をクリックします。
  10. Attributes 」タブを選択して、「 OrderStatusCode 」属性を選択します。 List of Values項目の横の「  Addをクリックします。
  11. List of Valuesダイアログで、「 OrdersView 」 →「 StatusCodes 」ノードを完全に開いて、「 Status 」属性を選択します。
  12. UI Hints 」タブをクリックします。
  13. Available ペインの「 Description 」を選択して、 Selectedペ インへ移動します。
  14. " No Selection" Item ドロップダウン・リストか ら「 Do Not Include "No Selection" Item 」 を選択します。
  15. OK 」をクリックして、List of Valuesダイアログを閉じます。

    tell me more iconIDE内

    ビュー・アクセッサとしてビュー・オブジェクトを追加すると、次のように表示されます。 [ 詳細はこちら]

 

静的LOVの作成

tell me more icon静的LOVの作成

静的LOVは、設計時に一時属性が作成および移入されるビュー・オブジェクトに基づいています。 LOVを必要とする固有の属性にビュー・オブジェクトを割り当てて、LOVの表示方法を選択します。 ページを編集して、LOVリストとして属性を表示します。 [ 詳細はこちら]

  1. エディタ・ウィンドウで、「 editOrders.jspx 」タブ をクリックして、ページを前面に表示します。
  2. OrderStatusCode 」inputTextフィールド を選択して削除します。
  3. Data Controlsパネルで、「 FODModuleDataControl 」 →「 OrdersView1 」ノードを開きます。 「 OrderStatusCode 」属性を選択し、ページにドラッグして以前の場所にドロッ プします。
  4. Createコンテキスト・メニューから「 Single Selections  ADF SelectOneChoice 」 を選択します。

    tell me more icon モデル駆動型リスト

    LOV UIの選択リストとして、ステータス・コードが表示されます。 選択リストとともに、ほかのオプションも使用できます。 LOVの複数の列(この例ではステータス・コード)を表示できます。選択を空白のままにすることもできます。 異なるLOV UI(コンボ・ボックスやラジオ・グループなど)も使用できます。 [ 詳細はこちら]

  5. saveSave allを クリックして作業内容を保存します。

    tell me more iconIDE内

    編集ページで、 OrderStatusCodeフィールドの横のLOVを使用 できます。 [ 詳細はこちら]

 

検索ビュー・オブジェクトの作成

tell me more icon検索ビュー・オブ ジェクトの作成

動的LOVは、LOVを移入するためのSQLを提供するビュー・オブジェクトに基づいています。 ビュー・オブジェクトを定義して、LOVの基礎として使用される問合せ(ここではすべての顧客を取得)を指定します。 ビュー・オブジェクトを構成して特定のフィールドのLOVを提供したあと、そのリストを使用して簡単に検証できます。 この例では、editOrdersフォームでユーザーが入力する CustomerId値が有効 な CustomerId(LOVに存在する値)であることを確認できます。 [ 詳細はこちら]

  1. アプリケーション・ナビゲータで「 Model 」プロジェクトを選択 し、Create View Objectウィザードを起動します(「 File」→「 New」→「 Business Tier」→「 ADF Business Components」→「 View Object」)。
  2. ビュー・オブジェクトの名前として CustomerViewと入力します。
  3. Rea d-only access through SQL query 」 を選択します。 「 Next 」をクリックします。
  4. ステップ2で、 Query Statementボックスに次の値を入力します。
    SELECT * from PERSONS Persons
    WHERE Persons.PERSON_TYPE_CODE = 'CUST'
  5. Test 」をクリックして、問合せをテストします。 ステップ6の Attribute Settingsになるまで、「 Next 」をクリックします。
  6. ステップ6で、「 PersonId 」属性を選択して、「 Key Attribute 」を選択します。 ステップ8の Application Moduleになるまで、「 Next 」 をクリックします。
  7. ステップ8で、「 Application Module 」を選択し ます。 「 Finish 」をクリックします。
  8. アプリケーション・ナビゲータで、 Modelプロジェクトの「 Orders 」をダブルクリックして、エディタで開きます。次に、「 View Accessors 」タブを選択します。

    tell me more icon検索ビュー・オブ ジェクト

    概要エディタの View Accessorsタブをクリックして、View Accessorsダイアログで新しいビュー・オブジェクトをビュー・アクセッサとして追加できます。 [ 詳細はこちら]

  9.  Addをクリックして、View Accessorsダイアログを開きます。 Available View Objects パネルの「 CustomerView 」を選択して、 View Accessorsパネルへ移動します。 「 OK 」をクリックし ます。
  10. Attributes 」タブを選択して、「 CustomerId 」属性を選択します。 Validation Rules項目の横の「  Addをクリックします。
  11. 検証規則の追加ダイアログで、 Rule Typeドロップダウン・リストから「 Key Exists 」を選択します。
  12. Validation Target Typeドロップダウン・リストから「 View Accessor 」を選択します。
  13. Orders Entity Attributesパネルの「 CustomerId 」と Validation Target Attributesパネルの「 PersonId 」 ( CustomerViewの下)を選択します。 「 Add 」をクリックします。
  14. OK 」をクリックします。
  15. OK 」をクリックして、エラー・メッセージを定義せずに続行しま す。

    tell me more iconIDE内

    ユーザー・インタフェースのLOVのプロバイダとして使用できるビュー・オブジェクトを作成しました。 このビュー・オブジェクトは、 CustomerIdフィールドを検証する有効な値のリストとしても使用できます。 [ 詳細はこちら]

 

動的LOVの作成

tell me more icon動的LOVの作成

LOVの基礎として以前に作成した動的ビュー・オブジェクト(SQL問合せから移入されたビュー・オブジェクト)を使用します。 フォームから CustomerIdフィールドを削除して、フィールドを inputListOfValuesコ ンポーネントに置き換えます。 このコンポーネントは、入力テキスト・フィールドとして表示されます。横のボタンを使用すると、個別のウィンドウでLOVの表示をアクティブにできます。 LOVを構成して、ビュー・オブジェクトから列のサブセットを表示し、フィールドとリストから選択した値の関係を指定します。 [ 詳細はこちら]

  1. エディタ・ウィンドウで、「 OrdersView 」タブをクリック して、ページを前面に表示します。次に、「 Attributes 」タブを選択し ます。
  2. CustomerId 」属性を選択し、 List of Values項目の横の「  Addをクリックして、この項目のLOVを作成します。
  3. List of Valuesダイアログで、「 Orders.CustomerView 」 を開いて、「 PersonID 」を選択します。
  4. UI Hints 」タブを選択します。
  5. Available ペインの次の属性を選択して、 Selectedペインへ移動します。「 PersonId 」、 「 FirstName 」、「 LastName 」、 「 Email 」、「 Gender 」 の順に移動します。
  6. OK 」をクリックして、ダイアログを閉じます。
  7. editOrders.jspx 」タブをクリックして、ページを 前面に表示します。
  8. CustomerIdの「 inputText」フィールドを選択し て削除します。

    tell me more icon動的LOV

    Data Controlsパネルを使用して、 CustomerIdのLOVを ページに追加できます。 CustomerIdinputTextフィー ルドを削除したあとに置換されます。 [ 詳細はこちら]

  9. Data Controlsパネルで、「 FODModuleDataControl 」 →「 OrdersView1 」ノードを開きます。 「 CustomerId 」属性を選択し、ページにドラッグして以前の場所にドロップします。
  10. Createコンテキスト・メニューから「 List of Values  ADF LOV Input 」 を選択します。
  11. orders-flow.xml 」タブをクリックして、ページを 前面に表示します。 「 browseOrders 」ページ・アイコンを右クリッ クし、「 Run 」を選択します。

    tell me more iconIDE内

    inputListOfValuesコンポーネントを editOrders.jspxフォー ムに追加しました。 ボタンをクリックして、LOVをアクティブにします。わかりやすいインタフェースからフィールドの値を選択できます。 [ 詳細はこちら]

 

cue cards icon次 のステップ

 

Copyright © 1997, 2008, Oracle. All rights reserved.