8.8.4 既存の対話グリッドからのマスター・ディテールの作成

2つの関連する表またはビューに基づく2つの編集可能対話グリッドが含まれる1ページのマスター・ディテールを作成します。

関連する対話グリッドをページに追加するだけで、単一ページで任意の数のマスター・ディテール関係を定義できます。既存の対話グリッドがある場合は、次のことを実行して、別の関連する対話グリッドを追加できます。

  • 親対話グリッドを作成します。

  • 主キーを定義します(必要に応じて)。

  • 子対話グリッドを作成します。

  • 子対話グリッドに対して、マスター・リージョンとマスター列を指定します。

次の例は、ページの作成ウィザードを実行して、部門表OEHR_DEPARTMENTSに対して対話グリッドを作成する方法を示しています。このウィザードでは親対話グリッドが作成され、ユーザーは主キーを定義できます。次に、従業員表OEHR_EMPLOYEESに対して子対話グリッドを作成します。OEHR_DEPARTMENTS表とOEHR_EMPLOYEES表は、サンプル・データ・セットのHRデータで使用できます。

既存のグリッドの下に関連する対話グリッドを追加するには:

  1. アプリケーションを作成します。
  2. OEHR_DEPARTMENTS表に対して1つ目の対話グリッドを作成します。
    1. 「アプリケーション」ホームページで、「ページの作成」をクリックします
    2. 「コンポーネント」で、「対話グリッド」を選択します。
    3. 名前: このページのテキスト名(Departmentsなど)を指定します。

      ヒント:

      このテキストは、レポート・リージョンのタイトルにも使用されます。ページの作成後は、ページ・デザイナでタイトルを変更できます。
    4. ページ・モード: デフォルトの「標準」を受け入れます。
    5. フォーム・ページを含める: このフラグを無効にします。
    6. データ・ソース: 「ローカル・データベース」を選択します。
    7. ソース・タイプ - 「表」を選択します。
    8. 表/ビューの名前: OEHR_DEPARTMENTS (表)を選択します。
    9. 編集が有効: このフラグを有効にして、この対話グリッドを編集可能にします。
    10. ナビゲーション: リージョンを展開して、ナビゲーションを有効または無効にします。いずれかのフラグが有効である場合は、追加の属性が表示されます。属性についてさらに学習するには、フィールドレベル・ヘルプを参照してください。
    11. 「次」をクリックします。
  3. 主キー列1: デフォルトを受け入れます。
  4. 「ページの作成」をクリックします。
  5. 「ページの保存と実行」をクリックして、レンダリングされたバージョンの親対話グリッドを表示します。

    次の図は、OEHR_DEPARTMENTS表に基づいて作成された編集可能対話グリッドを示しています。

    master_detail_parent.pngの説明が続きます
    図master_detail_parent.pngの説明
  6. ページ・デザイナに戻ります。実行時開発者ツールバーの「ページX」をクリックします。Xはページ番号です。
  7. OEHR_EMPLOYEES表に対して子対話グリッドを作成します。
    1. ギャラリで、「リージョン」タブを見つけます。
    2. 「リージョン」で、「対話グリッド」を検索して右クリックします。
    3. 「追加先」「本体」、リージョン、「部門」「後」の順に選択します。

    「レンダリング」タブと「レイアウト」タブの両方に、新しいリージョンが表示されます。

  8. 新しい子リージョンを編集します。
    1. 「レンダリング」タブで、「新規」リージョンを選択します(まだ選択していない場合)。
    2. プロパティ・エディタで、リージョン属性を編集します。

      ノート:

      グループまたは属性を検索するには、「フィルタ」フィールドにキーワードを入力します。プロパティ・エディタにグループまたは属性が表示されます。デフォルトの表示に戻すには、キーワードを削除します。

      • 指定、タイトル - Employeesと入力します。

      • ソース、タイプ - 「SQL問合せ」を選択します。

      • ソース、SQL問合せ: 問合せを入力します。

        select OEHR_EMPLOYEES.EMPLOYEE_ID as EMPLOYEE_ID,
            OEHR_EMPLOYEES.FIRST_NAME as FIRST_NAME,
            OEHR_EMPLOYEES.LAST_NAME as LAST_NAME,
            OEHR_EMPLOYEES.HIRE_DATE as HIRE_DATE,
            OEHR_EMPLOYEES.EMAIL as EMAIL,
            OEHR_EMPLOYEES.PHONE_NUMBER as PHONE_NUMBER,
            OEHR_EMPLOYEES.JOB_ID as JOB_ID,
            OEHR_EMPLOYEES.SALARY as SALARY,
            OEHR_EMPLOYEES.DEPARTMENT_ID as DEPARTMENT_ID 
         from OEHR_EMPLOYEES
      • レイアウト、新規行の開始: 「オン」を選択します。

      • 外観、テンプレート: 「標準」を選択します。

      • マスター・ディテール、マスター・リージョン - リージョン、Departmentsを選択します。

  9. 子対話グリッドEmployeesに対して、マスター列としてDEPARTMENTSを定義します。
    1. 「レンダリング」タブの子対話グリッドEmployeesの下で、「列」ノードを展開して「DEPARTMENT_ID」を選択します。
    2. プロパティ・エディタで、次のものを編集します。
      • 「マスター・ディテール」を見つけます。

      • 「マスター列」で、「DEPARTMENT_ID」を選択します。

  10. 「保存」をクリックします。ページを実行するには、「ページの保存と実行」をクリックします。

    親レポートDepartmentにより、子レポートEmployeesの結果がフィルタ処理されます。

    次に、子レポートEmployeesを編集可能にします。

  11. Employeesレポートを編集可能にします。
    1. ページ・デザイナにアクセスします。実行時開発者ツールバーの「ページX」をクリックします。Xはページ番号です。
    2. 「レンダリング」タブで、「従業員」リージョンを選択します。
    3. プロパティ・エディタで、「属性」タブをクリックします。
    4. プロパティ・エディタで、次のものを編集します。
      • 編集、有効: 「オン」を選択します。

      • 実行可能な操作 - 次の操作が有効化されていることを確認します: 「行の追加」「行の更新」「行の削除」

  12. 主キー列としてEMPLOYEE_ID列を定義します。
    1. 「レンダリング」タブのEmployeesの下で、「列」を展開して「EMPLOYEE_ID」を選択します。
    2. プロパティ・エディタで、「ソース」を見つけて、「主キー」「オン」にします。
  13. 「保存」をクリックします。ページを実行するには、「ページの保存と実行」をクリックします。

    子対話グリッドEmployeesが編集可能になりました