※6/18 23:30教えていただいたとおりにリレーションシップを組みなおしました。サブフォームはまだ記入できず。
主フォームとサブフォームを作成したのですが、サブフォームに新規追加ができません。
具体的には、下記において主フォームを「T_お店」の全部、サブフォームを「T_お店の客」から①、④としました。
どうしたら新規追加できるようになりますでしょうか。度々申し訳ありません。
■ツール全体的にいうと、どういうものを作ろうとしているのか。
・見積ソフトを使ってお店(私からみてお客様)に見積を提出している。案件ごとにTODOを管理したり、
色々な機能を追加したくてアクセスでツール作成中。
・見積ソフトより、注文に結び付いた見積データをダウンロードして、「案件」データとして取り扱っている。
・「案件」データを全ての大元としてツールを作成している。
・見積ソフトで見積先(お店)を選ぶ際に使用するのが、お店枝番データ。このお店枝番データが厄介で
担当が入っていたり入っていなかったりお店の支店でわかれていたり、きれいなデータではない。
見積ソフトで見積先を選ぶ時は、担当が入っていないお店枝番データを選択して、担当は手動で記載することが
多い。(必ずではない)
・お店枝番データが扱いにくいので、自分でお店データを作っている。(枝番左4桁共通のもの。お店枝番データの
記号データでもお店ごとに分かれている。ただ案件データには記号データは入っていない。)
・お店枝番データは見積ソフトからダウンロードできるが、お店もそんなに増えないし
情報量は少ないので、お店関係のデータは手作りしてもよい。
・お店の客データはどの店にどの客が属するか知りたいため作成。案件データには入っていないので
今回のフォームで手動で追加したいと考えている。
【T_お店】※手作りデータ
①お店記号(主キー)短いテキスト
②お店名前
【T_お店枝番】※ダウンロードデータ
①お店枝番(主キー)
例:1234-56のような感じで左4文字がお店ごとに共通している。お店の担当者ごとに枝番が分かれている情報なのだが、あまりきれいなデータではないので、担当データは別で作り直したいと考えている。
②お店記号
③お店名前
【T_お店の客】※手作りデータ
①商品番号(オートナンバー)
②お店枝番
③お店名前
④お店の客名前
【T_案件】※ダウンロードデータに手作り列を合体させたもの
①案件番号(主キー)
②お店枝番
③お店名前
④お店の客番号←手作り列
※リレーションシップ
1 対 多
【T_お店】お店記号 対 【T_お店枝番】お店記号
【T_お店枝番】お店枝番 対 【T_お店の客】お店枝番
【T_お店の客】お客の客番号 対 【T_案件】お店の客番号
テーブル設計はデータ内容と矛盾しないように設計する必要があるので、各テーブルのデータ内容の分析が重要です。
【T_お店枝番】ですが、一つのお店が複数の支店とか店舗を持っていて、その店舗ごとのデータを格納するということでしょうか(テーブル名やフィールド名からはこのような印象になります)。
しかし、「担当者ごとに枝番が分かれている情報」とのことだとすると上記の内容とは違うようですね。
この担当者というのは、店に複数の担当者がいて、担当者によって扱う商品が異なるということでしょうか。
【T_案件】とは具体的にどのようなものなのでしょうか。お店枝番 と 商品番号 があるということは、担当者と商品に関係のあるデータが格納されということになりますが、実際はそうなのでしょうか。
上記の点についての詳細な情報が分からないと、具体的にアドバイスは難しいですね。
一般的な商店とかに関するデータならだいたい推測できるのですか、どうも一般的なものとは異なる業務形態のようなので、推測もしづらいです。
現状のリレーションシップを図示すると下記のようになりますが、通常はこのようにループになるような結合はNGです。
下記のような結合になるような設計にすべきです。
あるいは、一から設計を見直す必要があるかもしれません。
実は、ネットへの書き込みは半永久的で、あまり本当の名前で全部書くと関係者に見られたとき恥ずかしいなと思い、テーブル名を別のものに置き換えていました。そのことが要らぬご負担をおかけする原因となってしまいました…本当に申し訳ありません…
しかも、置き換えると自分でも確認するとき混乱する原因となっておりました…
本当に愚かです…
後ほど、イメージしていただけるよう、本当の内容で改めて具体的に書かせていただきます。
申し訳ありません。
できるだけ具体的に書いたつもりですが、つたない文章でわかりづらく申し訳ありません。(お客様=お店という点を残しましたが、実際は企業相手です。そこだけフィクションです)
テーブル設計の見直しについて、自分なりにずっと考えています。正しく変更できるかはわかりませんが、とりあえず変更はする予定です。それでもフォームに書き込めなかったらまた、質問させていただきます。ご迷惑をおかけしました。