サブフォーム

サブフォームを使用し、アプリケーションに1対多の関係を構築

「1対1」の関係を設定するのはかんたんで、必要なものは検索フィールドだけです。ここでは、「1対多」の関係を設定するために役立つヒントをご紹介します。「1対多」の関係を構成するのは、「1」の側である親フォームと「多」の側である子フォームです。子フォームはメインフォームの一部となり、サブフォームと呼ばれます。

サブフォームを追加

フォームにフィールドを追加するように、フォームに別のフォームを追加できます。

子レコードを追加

複数行の子レコードを一度にすべて追加できます。

子レコードを表示

統合ビューに親レコードと子レコードの両方が一元的に表示されます。

サブフォーム用のDelugeイベント

通常のタスクに加え、サブフォーム用に2つの新規タスクが用意されています。

アプリケーションにサブフォームを追加

カスタマイズしたビジネスアプリケーションを構築するときは、さまざまな状況で親子関係を使用する必要が生じます。サブフォームを使えばわずか数分で解決できます。まず、通常のフォームと同様に子フォームを作成し、フィールドをすべて追加します。次に、メインフォームの作成に進みます。メインフォームにはフィールドと同じくサブフォームも追加できます。左のペインからフォームビルダーの領域にサブフォームをドラッグ&ドロップします。子フォームは、同じアプリケーション内から選択することも、別のアプリケーションから選択することもできます。

子レコードを追加

親フォーム本体にサブフォームが挿入されます。一度に複数の子レコードをサブフォームに追加できます。アクセスモードでは、サブフォームが表形式のレイアウトで表示されます。[新規追加]リンクをクリックして、レコードを1件ずつ追加できます。レコードごとに表に1行追加されます。レコードの追加中であっても、追加したくない行があれば削除できます。フォーム内だけでなくレコードの編集中でも、サブフォームに子レコードを追加できます。

子レコードを表示

統合ビューには子レコードが対応する親レコードとともに表示されます。各行には、親レコードに関連付けられている子レコードがリンクとして表示されます。このリンクをクリックすると、ポップアップウィンドウで子レコードの詳細が開きます。親レコードのレコード概要には、親レコードだけでなく子レコードの詳細も表示されます。ビューの設計モードから、サブフォームのどのフィールドを統合ビューに表示する必要があるかを選択できます。

サブフォーム用のDelugeイベント

サブフォームには、「On Add Row」と「On Delete Row」という2つの新しい専用イベントが用意されています。「On Add row」イベントは、親フォームに新規の子レコードが追加されるたびに起動し、「On Delete row」は、親フォームから子レコードが削除されるたびに起動します。サブフォーム自体を対象にこれらのイベントのビジネスルールを指定することも、サブフォームに含まれるフィールド用のワークフローを含めることもできます。子フォームのフィールドにユーザーが値を入力すると実行されるアクションは、親フォームで指定できます。