|
たびたびのご教授ありがとうございます。
>その1
>使用されている(作るデータベース)のAccessのVersionは2000以上ですか?
ACCESS 2000で作成しております。
いじっちゃダメDB(会社マスタ)はOracleです。
>一つの顧客で例えば3カ月おきに更新されるというようなイメージなのでしょうか。
>・正規化前のデータ(例)
>
> 顧客名 契約日 更新日 商品X 商品Y
>トマト株式会社 2004/5/10 2004/5/10 yes no
>トマト株式会社 2004/5/10 2004/6/10 no yes
>トマト株式会社 2004/5/10 2004/7/15 yes yes
>
>※ 上の例では契約日を一つの顧客との取引開始契約としています。
えぇっとですね、あくまで私が今、考えている形としては、
会社ID 契約X 契約X_更新日 契約Y 契約Y_更新日 ・・・
1 Yes 2004/5/10 Yes 2004/6/10
2 no 2004/08/10 yes 2004/7/20
といったような感じで、各契約ごとに更新日、及び、Yes/Noを持っており、
更新の際はレコードを新たに追加して過去の履歴として保存していくと言うよりは、
レコードを上書きしてしまって行く形になります。
(フォームを作成して、チェックボックスで操作します。)
ですので、契約テーブルに新レコードが追加されるのは、
新たな取引先の発生(会社マスターに追加があった場合)になります。
ちなみに、契約テーブルの存在意味としては、例えば、
契約XのフラグのNoの一覧をレポートし、今後、営業していくですとか、
各商品ごとに契約期間が決まっているので、契約X_更新日を
2004/5/10以前と言う様な形でレポートすることによって、
契約がもうすぐ切れる会社を知ることが出来ると言った
使い方になります。
そう言う意味では、このテーブルに関してはDBと言うよりは、
レポートの為、チェックの為のフラグとして使う形になります。
確かに、会社マスターに契約がらみの項目も追加できれば
まったく問題ないのですが、あくまで、マスターをいじれないと言う
制約があるため、強引に2つに分けたような形をとり、
クエリの方で完全にこちらの要求を満たしてくれる形になる予定です。
会社の追加はそうそうあることでは無いのですが、発生の際は
手作業ではなく、自動で、契約テーブルの方にも新たに追加された
会社用のフラグのレコードも作成されて欲しいのです。。。
(↑ここが今の形での一番のネックになっております。。。)
初心者の意味不明な説明になってしまい、すみません。
こもれび様のお時間を割いていただき申し訳ありませんが、
ご教授、よろしくお願いいたします。
|
|