- ベストアンサー
Access2013
今回初めてAccessを使います。 用語等が間違っていたら申し訳ありません。 仕入・在庫・売上のテーブルを作りました。 1つの商品番号に1つの商品というものをデーターとして入力しています。 在庫と売上には基本的殆ど同じフィールドがあり、違いといえば、売上には購入者の名前が入るぐらいです。 そこで、売上に1つの商品番号(例えば、A)を入力したら、在庫からその商品番号(A)のすべてのフィールドを削除して、売上にそのデータをすべて移行するようなことは可能でしょうか? もし可能でしたら、アドバイスをお願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
在庫は スタート時点の在庫数に 入庫があればプラス 出庫ならマイナス としていく いつ いくつ 入出庫したか 履歴を積み重ねていく 棚卸しで調整して 再スタート 在庫が売上になるのは実際としてそうかもしれないが データとしては 移動 させず 売上は売上として登録 在庫は売上があれば在庫を -1とみなす として処理 という処理を推奨 同じフィールドは無意味では たとえばどんなフィールドの構成なのか 商品名や規格などは 商品マスタ を作り共有化する 売上テーブルは その目的のためのフィールドのみにする というのが正しい
その他の回答 (2)
- hatena1989
- ベストアンサー率87% (378/433)
> 1つの商品番号に1つの商品というものをデーターとして入力しています。 1個の商品に一つの商品番号というような完全な単品管理なのでしょうか。 それとも一つの商品というのは一つの商品名ということでそれを複数個仕入れることもあるということでしょうか。 それによって当然設計方法等が変わってきますので明確にしてください。 とりあえず完全単品管理として回答します。 > そこで、売上に1つの商品番号(例えば、A)を入力したら、在庫からその商品番号(A)のすべてのフィールドを削除して、売上にそのデータをすべて移行するようなことは可能でしょうか? データベースとしては設計がまずいですね。 仕入・在庫・売上 とテーブルを分けないほうがいいと思います。 分けると、データを移動するという面倒な操作が発生してしまいます。 仕入・売上 というのは商品の属性ですので、一つのテーブルにまとめます。 例 商品番号 商品名 詳細内容 司令先コード 仕入価格 仕入日 販売価格 販売日 購入者コード こんな感じのフィールド構成にすればいいでしょう。 これで、クエリで仕入日が入力してあるデータを抽出すれば 仕入データ、 販売日が入力してあるデータを抽出すれば 販売データ、ということになります。 在庫は、仕入日が入力してあり、販売日が未入力のデータということになります。
- airhead-no1
- ベストアンサー率48% (45/92)
可能だけど、各テーブルのフィールド名を書かないと、まともな回答は来ないと思う