アプリ版:「スタンプのみでお礼する」機能のリリースについて

どなたか、ホントにお助け下さい。

A、B、Cテーブルのデータを1つのフォームで表示入力できるよう、A、B、Cを繋げたクエリ作成し、
A対B、A対Cの一対多リレーションシップ設定したんですが、フォームビューで確認すると背景だけで表示されません。

・コントロールのプロパティの「可視」の状態は「はい」
 コントロールのはフォーム上の配置位置が「ページヘッ ダー/フッター」は「詳細」となっております。

切り分け内容
・フォーム-対象フォルダ選択-開く-背景表示無し
-プロパティ-レコードソース-クエリー-レコードソースを外すと”入力フォーム自体”は表示されるようになりますが、各々#Name?となってしまいます。

お助け下さい。

A 回答 (1件)

#Name?エラーについては、後半を読んで下さい。



同じテーブル構造でクエリ、フォームが空白表示される場合とそれを回避する術を紹介します。
まず、回避する術から見て下さい。

<Table1> <Table2>  <Table3>
ID<----+  ID     +--->ID
Data1 +----Table1_ID  |  Price
      Table2_ID---+
      Data1

このようなリレーションシップになっているならば、
クエリを<SQLビュー>で確認すれば、

SELECT Table2.ID, Table1.Data1, Table2.Data1, Table3.Price
FROM Table1 RIGHT JOIN (Table2 LEFT JOIN Table3 ON Table2.Table3_ID = Table3.ID) ON Table1.ID = Table2.Table1_ID;

となります。
この場合、Table2にデータを次のように登録できるようにするには、参照整合性のレ点を消す必要があります。

ID  Table1_ID Table3_ID Data1
1   1     1     XX
2   1     1     YY
3   0     0     ZZ

この場合、クエリにもフォームにもTable2のレコードが全て表示されます。
(条件抽出している場合は、それに合致する全てのレコード)

<Table1> <Table2>  <Table3>
ID<----+  ID     +----ID
Data1 +----Table1_ID  |  Price
      Table2_ID---+
      Data1

今、Table2とTable3の結合を<両方が同じのみ>に変更します。
すると、3行目が消えます。
また、Table3から対応するレコードを削除します。
そうすると、クエリもフォームも空白となります。
これは、リレーションシップの設定のなせるワザです。

***********************************
#Name?となってしまいます
***********************************

テキストボックスのコントロールソースが存在しないので当然のことです。
    • good
    • 0
この回答へのお礼

大変、助かりました。
有難うございました。

お礼日時:2006/09/08 12:23

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!