アプリケーションの設計
サブフォームを作成する必要なサブフォームに類似しているサブフォームをコピーして修正することも、新規にサブフォームを作成して設計することもできます。 1 新規のサブフォームがあるデータベースを開き、[共有コード] - [サブフォーム] をクリックします。
2 [新規サブフォーム] をクリックします。
3 フォームの作成時に使用した同じ要素を使って、サブフォームを作成します。
4 [設計] - [サブフォームのプロパティ] を選択します。[サブフォームのプロパティ] インフォボックスが表示されます。
5 [サブフォーム情報] タブで、新規サブフォームの名前を入力します。
6 (省略可能) コメントを入力します。
7 次の中からサブフォームの表示オプションを選択します。
この設定をオンにしないと、フィールド名がいったん表に保存されてからメモリに保存されます。メモリにフィールド名を保存すると、[アクションの追加] ダイアログボックスなどの場所でもフィールド名を表示できます。
フォームにサブフォームを挿入する 1 フォームを開きます。 2 サブフォームを挿入する位置にカーソルを合わせます。
3 [作成] - [リソース] - [サブフォームの挿入] を選択します。[サブフォームの挿入] ダイアログボックスが表示されます。
4 挿入するサブフォームを選択してから、[OK] をクリックします。[データベース] プルダウンリストにあるデータベースを選択すると、他のデータベースに含まれているサブフォームを挿入することもできます。
フォームに計算結果のサブフォームを表示する 1 フォームを開きます。 2 サブフォームを挿入する位置にカーソルを合わせます。
3 [作成] - [リソース] - [サブフォームの挿入] を選択します。
4 [式の定義によりサブフォームを挿入] を選択します。
5 [OK] をクリックします。
6 表示するサブフォームを設定する式を、プログラムペインに入力します。
7 フォームを閉じ、フォームに名前を付けて保存します。
計算結果のサブフォームの表示例ディスカッションデータベースの [メイントピック] フォームに、新規文書が作成されたときにサブフォーム「NewDocSubform」を表示し、既に保存されている文書が開かれたときにサブフォーム「SavedDocSubform」を表示します。また、NewDocSubform と SavedDocSubform には同じフィールド、または同じ図形が使われていないものとします。この場合のサブフォーム挿入式は、次のようになります。 @If(@IsNewDoc;"NewDocSubform";"SavedDocSubform");
メモ サブフォーム式は文書が開いているときは更新できません。
サブフォームを削除するユーザーが開いた文書が、既に削除されているサブフォームを参照している場合は、ステータスバーに「サブフォーム <サブフォーム名> がロードされていません。」というメッセージが表示されます。文書は開かれますが、削除されたサブフォームは表示されません。設計者が開いたフォームが、既に削除されているサブフォームを参照している場合は、ステータスバーに「サブフォーム <サブフォーム名> がロードされていません。」というメッセージが表示されます。またフォーム上で、削除されているサブフォームの挿入位置をクリックすると、「文書が無効またはありません。」というメッセージが表示されます。この場合、設計者はサブフォームを開くことはできません。 これらのメッセージが表示されないようにするには、データベースに他のサブフォームを追加して、このサブフォームに、削除されたサブフォームと同じ名前を付けます。
フォームからサブフォームを削除する各フォームからサブフォームを削除できます。削除するサブフォームを使用している他のフォームには、影響を与えません。 1 フォーム上のサブフォームの領域をクリックします。
2 [編集] - [削除] を選択します。
3 必要に応じて、配置を調整します。
データベースからサブフォームを削除するデータベースからサブフォームのすべてを削除できます。データベースからサブフォームを削除すると、このサブフォームを参照するフォームではエラーが発生しますので、注意してください。 1 データベースの設計リストから [サブフォーム] をクリックします。