演習
次の演習では、CSP Contact Management システムを作成する手順について説明します。このアプリケーションは、以下の 3 つの CSP ページで構成されています。
-
Contact.CSP — 電話番号など個別の連絡先のすべての情報を表示します。ユーザは連絡先を編集できますが、電話番号は編集できません。
-
Phone.CSP — 個別の電話番号のすべての情報を表示します。ユーザはこの情報を編集できます。
-
AddPhoneNumber.CSP — 新規の電話番号の作成および連絡先への追加に使用されます。
すべての演習を実行するには、作業するネームスペースに Contact クラスと PhoneNumber クラスをインストールして生成しておく必要があります。手順の説明は、"チュートリアル・ファイルのインストール" を参照してください。
演習 1 : Contact.CSP : Contact.CSP という名前の CSP ページを作成します。このページでは、連絡先情報の表示と更新を実行できます。このページの一部は、チュートリアルの 第 II 章の本文の例として作成されています。Contact.CSP は、以下の要件を満たしている必要があります。
-
Contact クラスに結合されるフォームが含まれていること。このフォームは、Contact インスタンスの Name、ContactType、および ID の各プロパティを表示します。ユーザは、Name と ContactType のプロパティを更新できます。このフォームの作成には、スタジオのフォーム・ウィザードを使用します。第 II 章の "フォーム・ウィザードの例" のセクションでは、このフォームの作成が手順を追って説明されています。
-
フォームの [検索] ページで、ContactType を基準にした検索を実行できること。検索結果には、Name と ContactType の両方のプロパティを表示する必要があります。
-
このページに、フォーム上で開かれている Contact インスタンスに属する各 PhoneNumber の Number と PhoneNumberType が表示されること。電話番号は、ダイナミック・クエリかクラス・クエリのいずれかを使用して、データベースから取得します。電話番号の表示は、このフォームの構成部分ではありません。
-
このページに、それぞれの電話番号が Phone.CSP にリンクするハイパーリンクとして表示されること (このページは演習 2 で作成されます)。
-
各ハイパーリンクの URL に、PhoneNumber インスタンスの ID が OBJID の値として組み込まれたクエリ文字列が含まれること。
演習 2 : Phone.CSP : Phone.CSP という名前の CSP ページを作成します。このページでは、電話番号情報の表示と更新を実行できます。Phone.CSP は、以下の要件を満たしている必要があります。
-
PhoneNumber クラスに結合されるフォームが含まれていること。このフォームは、Numer、PhoneNumberType、ID と、関連する Contact の Name も表示します。ユーザは、PhoneNumberType と Number のプロパティを更新できます。このフォームの作成には、Caché の Web フォーム・ウィザードを使用します。
-
Contact.csp に戻るためのハイパーリンクが組み込まれていること。ハイパーリンクの URL には、OBJID に適切な Contact ID 値が組み込まれたクエリ文字列を含めます。
演習 3 : AddPhoneNumber.CSP : AddPhoneNumber.CSP という名前の CSP ページを作成します。このページでは、新しい電話番号を連絡先に追加できます。AddPhoneNumber.CSP は、以下の要件を満たしている必要があります。
-
ユーザが新しい PhoneNumber の PhoneNumberType と Number のプロパティを指定できるフォームがあること。このフォームには、保存ルーチンを起動する [保存] ボタンも用意されている必要があります。このフォームに、オブジェクトを結合することはできません。このフォームの作成には、Caché の Web フォーム・ウィザードを使用しないでください。
-
新しい PhoneNumber インスタンスが、ObjectScript か Caché Basic の関数で作成および保存されていること。
-
[保存] ボタンがハイパーイベントを使用して、新しい PhoneNumber を作成する関数を起動していること。PhoneNumber のプロパティ値は、HTML DOM を使用してフォームから取得されます。
-
新しい PhoneNumber を作成する関数が、PhoneNumber Contact プロパティに適切な Contact ID 値を割り当てていること。
-
ページに、Contact.CSP に戻るためのハイパーリンクが組み込まれていること。ハイパーリンクの URL には、OBJID に適切な Contact ID 値が組み込まれたクエリ文字列を含めます。
演習問題のソリューション・ファイルは、PartIIExerciseSoln.xml にあります。このファイルの場所とソリューションのインストールの詳細は、"チュートリアル・ファイルのインストール" を参照してください。