マスタテーブルの作成

実績テーブルマスタテーブルの違いはどこにあるのか、そしてマスタテーブルのポイントとは
また、テーブルのリレーション(繋がり)について解説します。

マスタテーブルを分ける必要性は

主となる実績テーブル(仕入、売上データ)の項目の中に、繰り返し使用されるデータがあります。繰り返し入力されるデータは同一性が要求され、最新データの管理、データの仕分けなどに利用されます。

仕入、売上データの場合、取引先(仕入先、販売先)、そして商品などがマスタとして別に管理するのが効率的です。

以下の仕入先マスタを参考に、独自のマスタテーブルを作成してください。

仕入先マスタ(マスタテーブル)

  • 仕入先CODE    テキスト型
  • 仕入先名称     テキスト型
  • 担当者       テキスト型
  • 取引先分類     テキスト型
  • 住所        テキスト型
  • 登録日       日付または数値    yyyy/mm/dd または yyyymmdd
  • 更新日       日付または数値    yyyy/mm/dd または yyyymmdd

その他支払い、請求管理に使用する場合は、締め日、支払期日、支払いサイクル、取引残高、金額端数の処理方法、相殺CODEなど、適宜加えることが必要です。

データ登録時の入力支援、実績データの抽出や集計のKEYとなる項目を念頭に、マスタテーブルを作成してください。

商品マスタ(マスタテーブル)

  • 商品CODE     テキスト型
  • 商品名称      テキスト型
  • 仕入先CODE    テキスト型
  • 仕入先名称     テキスト型
  • 数量単位      数値型
  • 包装単位(入目)   数値型
  • 単価        数値型
  • 備考        テキスト型
  • 登録日       日付または数値    yyyy/mm/dd または yyyymmdd

その他メーカーコード、メーカー名、商品分類、更新日などを必要に応じて追加してください。

実績テーブルとマスタテーブルの違い

マスタテーブルは実績テーブルの中に繰り返し出てくる項目(商品や取引先)の情報をまとめたものです。

商品価格、取引先情報など最新情報の管理
抽出集計のKEY項目を設定
などの役割があります。

もちろん、実績テーブルとマスタテーブルで、項目ごとのデータ型は統一する必要があります。

マスタテーブルのポイント

  • 繰り返し入力される項目の同一性担保
  • 最新情報の管理
  • 重複のないインデック(取引先CODE、商品CODE)の設定

テーブルのリレーション

テーブルのリレーションとは、テーブル同士の連携のこと
複数のテーブルで、共通の項目を結びつけて、仮想のテーブルが作成することができます。

仕入先マスタ商品マスタ(マスタテーブル)と仕入データテーブル(実績テーブル)は、商品コード取引先コードで繋がっています。

その仮想テーブルを利用して集計、分析が可能となります。

正規化

例として、社員名簿社員番号、氏名、部署コード、部署名が、名簿の項目としてあり、新年度に部署名が変更になるとします。

社員名簿のみであれば、すべての社員番号に対して1レコードずつ部署名の変更が必要です。

それに対して、部署コード、部署名の部署テーブルが別にあれば、部署テーブルの部署名変更で、社員名簿の部署名が一括で変更出来ます。

社員名簿と部署テーブルの連携は必要となりますが、最新版管理が効率的に実現できます。

しかし、実績記録を目的としたテーブルでは、最新版管理ではないので注意が必要です。

上の実績テーブルは、仕入(購入)記録データです。C列の仕入先CODEから、マスタテーブルにある仕入先情報を取得することができます。D列の仕入先名を省略することもできます。

また、E列の商品CODEから、マスタテーブルにある商品情報を取得することができます。F列の商品名も省略することができます。

しかし、仕入先名商品名に変更があった場合にも、常に最新が表示されることとなり、適正でないこともあります。

実績テーブルの履歴データには仕入先名商品名のデータ項目を設け、更新しないことが大切です。

価格変動のある、商品の単価などは、特に重要となります。

新規入力の際に、最新のマスタから、商品情報の取得することができればよいと思います。

次回は入力フォームの作成へすすめていきます。

タイトルとURLをコピーしました