課題 1.6: 関連レコード・リストのフィルター操作

始める前に、『課題 1.5: 更新ページの作成』を完了しておく必要があります。

これまでに、関連レコード・リストを使用してテーブルにあるすべてのレコードを表示する方法と、 関連レコードにフィルター条件を適用して特定レコードを選び出す方法を学習しました。 次に、ユーザーがカテゴリーによって案内広告を表示できるようにするために、 特定の基準と一致するレコードだけを表示する方法を学習します。

更新ページの場合と同様に、 ハイパーリンクからページに渡された要求カテゴリーを含むパラメーターでフィルター操作します。 複数のレコードがカテゴリーと一致することもあるために、 このフィルターは関連レコードではなく関連レコード・リストに適用されます。

フィルター操作した関連レコード・リストの作成

デモを見る

フィルター操作した関連レコード・リストの作成には、特定のレコードだけを表示するように、 リストをフィルター操作する特別なステップが含まれています。 update_record.jsp ページを作成したときと同様に、all_records.jsp ページでパラメーターを指定して、 このパラメーターを filtered_records.jsp ページに送信するためのリンクを使用します。

  1. 「プロジェクト・エクスプローラー」ビューで filtered_records.jsp ファイルをダブルクリックして開く。
  2. デフォルトのテキストを除去する。
  3. パレットから 1 つの「関連レコード・リスト」をページにドラッグすることによって、関連レコード・リストを作成する。 「関連レコード・リストの追加」ウィンドウが開きます。
  4. このレコード・リストを filtered_recordlist と命名する。
  5. データ・コントロールの追加」が選択されていることを確認して、「次へ」をクリックする。
  6. W5SAMPLE.ADS」テーブルをクリックする。
  7. 次へ」をクリックする。
  8. タスク」の下の「フィルター結果」をクリックする。 「フィルター」ウィンドウが開きます。
  9. フィルター条件を作成するために、 「条件」タブ上の「追加」ボタン をクリックする。 「条件」ウィンドウが開きます。
  10. 」ドロップダウン・リストから「メイン・カテゴリー (MAINCATEGORY)」を選択する。
  11. 」フィールドに #{param.CAT} と入力する。 このコードはランタイム時に要求パラメーターの CAT の値として評価されます。

    「条件」ウィンドウは下図のようになるはずです。

    「条件」ウィンドウ

  12. OK」をクリックしてこのフィルター条件をユーザーの関連レコード・リストに適用する。 この条件は「条件」タブ上にリストされます。
  13. 閉じる」をクリックする。
  14. 次へ」をクリックする。
  15. 再び、データ・テーブルに表示するさまざまな列を選択できます。 次の列だけを選択してください。
  16. 列を次の順序に配置する。
    1. タイトル (TITLE)
    2. 説明 (DESCRIPTION)
    3. メイン・カテゴリー (MAINCATEGORY)
    4. 価格 (PRICE)
    5. 電話 (PHONE)
    「関連レコード・リストの追加」ウィンドウは下図のようになるはずです。

    「関連レコード・リストの追加」ウィンドウ

  17. 完了」をクリックする。 関連レコード・リストがこのページに追加されます。 このリストは all_records.jsp ページ上のレコード・リストと同じように見えますが、 カテゴリーでフィルター操作されているので、一時点では 1 つのカテゴリー内のレコードのみを示しています。
  18. このページを保管する。

    このページは下図のようになるはずです。

    ページの現在の外観

all_records.jsp からのリンク

デモを見る

更新ページの場合と同様に、ここで all_records.jsp ファイルに、filtered_records.jsp ファイルへナビゲートするだけでなく、関連レコード・リストをフィルター操作するための CAT パラメーターも渡すハイパーリンクを作成する必要があります。

  1. all_records.jsp ファイルを開く。
  2. 「パレット」ビューで「Faces コンポーネント」ドロワーを展開する。
  3. パレット・ディレクトリーから「リンク」コンポーネントをユーザーのデータ・テーブルの {MAINCATEGORY} 出力コントロールに直接ドラッグする。 「URL の構成」ウィンドウが開きます。
  4. ターゲット・ページとして「URL」フィールドに filtered_records.jsp と入力し、「ラベル」フィールドは空のままにしておく。

    リンクを出力コントロールへ直接ドロップして、 「ラベル」フィールドを空のままにしておくと、このハイパーリンクは {MAINCATEGORY} テキストをハイパーリンク・ラベルとして使用することになります。

  5. OK」をクリックする。
  6. リンク・アイコン  リンク・アイコンをクリックして、 次に、「プロパティー」ビューの「パラメーター」タブをクリックする。
  7. パラメーターの追加」をクリックして、新規パラメーターを作成する。
  8. 新規パラメーターのために、「名前」フィールドに CAT と入力する。
  9. CAT パラメーターを入力フォームのメイン・カテゴリー (MAINCATEGORY) 列にバインドするには、「」フィールドを選択して、 次にこのフィールドの「ページ・データ・オブジェクトの選択 」ボタン をクリックする。 「ページ・データ・オブジェクトの選択」ウィンドウが開きます。
  10. データ・オブジェクト」フィールドで、all_recordlist(ADS) 関連レコード・リストから「メイン・カテゴリー (MAINCATEGORY)」列をクリックする。
  11. OK」をクリックする。
  12. このページを保管してテストする。 カテゴリー名をクリックすると、filtered_records.jsp ページに移動し、 そこで、そのカテゴリーの案内広告のみが表示されます。

おめでとうございます!

『モジュール 1: データ接続を扱う Web ページの作成』が完了しました。 これまでに次のことを学習しました。

拡張機能の追加

このモジュールでは、JavaServer Faces テクノロジーおよびツールについて紹介しました。 サイトを魅力的で、使いやすく、効率的なものにするために、 さらに多くの手段があります。 次のモジュールの『モジュール 2: 拡張機能の追加』では、 この単純な案内広告サイトを取り込んで、これをもっとビジュアル的に楽しくて、 より複雑なアプリケーションに変える方法について学習します。 ご使用のサイトを下のようにしたい場合は、次のモジュールに進んでください。

ページ外観のプレビュー

ご利用条件 | フィードバック
(C) Copyright IBM Corporation 2000, 2004. All Rights Reserved.