SSブログ

システム設計の話 その7・テーブル設計 全体 [システム設計の話]

 前回までで、一通りシステムの内容をさらいましたので、それを考慮しながら、テーブル設計の作業に進みます。
 実際のお仕事だと、1段階目の打ち合わせが終了という所です。最初にざっとお客さんの要望を聞いて、その後持ち帰って、提案内容をまとめる作業に入ります。
 まだ提案の段階なので、お客さんに機能の説明と確認ができる資料があれば良いので、テーブル設計のような詳細部分は必要ないのですが、テーブルがシステムの要なので、早い段階から検討しておいた方が良いと思います。

 まずは、どんなテーブルが必要になるかを、ざっくり考えていきます。
 売上伝票管理なので、売上データ用の「売上データテーブル」が必要です。
 このシステムは、1つの売上伝票には、複数の商品の明細があります。なので、テーブルを2つに分けて管理するようにします。
 1つのテーブルには、売上伝票に関する情報を持たせます。日付や、顧客などの、1伝票に付き、1つだけ発生する情報です。
 2つ目のテーブルには、明細部分の情報を持ちます。売り上げた商品が複数あれば、その分レコードを追加していく形になります。
 と、言うことで、売上データには、「売上伝票データ」テーブルと、「売上明細データ」テーブルを設けます。

 今回のシステムでは、発生するデータは売上データのみなので、データテーブルは以上です。

 次に、マスタテーブルを考えます。
 その4に出てきた、帳票の内容を満たすことができるように考えていきます。

 まずは当然「顧客マスタ」。顧客名や、住所などの情報を持たせます。
 社内の担当者も必要なので、「担当者マスタ」を設けます。
 売り上げる商品の情報もマスタにすべきですので、「商品マスタ」に持たせます。

 ざっと、上記の物が洗い出せました。
 その他に、売上伝票番号を管理する方法や、自社の情報、消費税率の設定、テーブルの項目をコード化したときの対応する名称をもっておくコード名称、といった細かい用途のテーブルが必要と思われます。
 それぞれ個別にマスタを設けても良いのですが、この段階ではとりあえずなんでも放り込める、「コードマスタ」というなんでもマスタを一つ想定しておきます。

 以上、ざっとおさらいです。

○データテーブル
1.売上伝票データ
2.売上明細データ

○マスタテーブル
1.顧客マスタ
2.担当者マスタ
3.商品マスタ
4.コードマスタ

 とりあえず、こんなテーブルが必要かなという大枠が決まりました。次は、個々のテーブルの項目内容を考えて行きます。


この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。