• ベストアンサー

MySQL+PHP を使用した在庫管理

会社で在庫管理システムを作ることになり、開発環境に Windows+Apache+MySQL+PHPを使用しています。 しかし、いきなり在庫数の管理をする所でつまづきました。分からない点は以下の通りです。 1. 出荷があった場合、在庫数を減らす 2. 出荷の履歴を残す 3. 在庫が0の場合は出荷できないようにする 以上の問題点を解決できるような書籍やホームページを探しているのですが、見つけることができません。 どなたかご教授いただけると助かります。

質問者が選んだベストアンサー

  • ベストアンサー
noname#33971
noname#33971
回答No.2

どのような仕様になっているかわからないのですが以下を参考に 1、出荷した物の在庫データを更新すればよい 2、履歴用のテーブル又はテキストファイルを作りそこに残しておく 3、在庫が0の物は別のテーブルで管理しておく SQLやファイル処理を利用すれば大丈夫です

th-terra
質問者

お礼

3つの項目とも、大変参考になりました。 ありがとうございます。 実際にどうすれば良いのか分かりませんが、出荷すると自動的に在庫数が更新されるには具体的にどういったプロセスを踏むのかをご教授いただけると助かります。 履歴用のテーブルを作る方法についても具体的な内容をご教授くださると嬉しいです。 頭で考えると簡単な事なのですが、実際にプログラムを組むとなると難しいです……。

その他の回答 (5)

  • JAWS55
  • ベストアンサー率38% (176/452)
回答No.6

書籍より、osCommerceやZendなどのオープンソースのWebショップのソースを眺めて、どのような処理をしているのか研究してみては? あるいは、書籍でもサンプルで簡単なWebショップのソースが付いているものがありました。(今手元にないので書名は不明) amazonででも探してみてください。

  • JAWS55
  • ベストアンサー率38% (176/452)
回答No.5

自動的に在庫が減ったり、履歴が残るわけではありません。 プログラムでデータベースを更新していく必要があります。 その商品の在庫数をDBから読み込む。 新在庫数=在庫数-出荷数の計算をする。 もし新在庫数が0より小さければ => 出荷不能の処理 日時、商品コード、出荷先、出荷数などの必要な履歴データを履歴テーブルに追加する。 新在庫数を商品の在庫数に書き戻す。 をプログラムとSQLで記述していきます。

th-terra
質問者

お礼

詳しいご意見ありがとうございます。 頭では想像できるのですが、実際にどうコーディングすれば良いのか検討がつきません。出荷をすると自動的に履歴として残したいですし、在庫が0ならば出荷できないようにする。 何か参考になる書籍は無いでしょうか?

noname#33971
noname#33971
回答No.4

>この「商品が売れる」動作と「商品を出荷する」という動作は同一と考えて良いですよね……? 似たようなものだと思います。 ショッピングカートシステムも商品が売れれば在庫は減りますから

th-terra
質問者

お礼

そうですよね。 ここの機能だけ組むことができれば良いのですが。

noname#33971
noname#33971
回答No.3

No.2からです。 >出荷すると自動的に在庫数が更新されるには具体的にどういったプロセスを踏むのか 自動的には難しいのではないでしょうか?今の僕では思いつきません 流れ的には、 その日1日の出荷履歴を見る     ↓ 履歴から在庫数を引く     ↓ 在庫数を引いて 1.「0になったら在庫無し用のテーブルに移動」 2、「マイナスになったら発注用のテーブルに移動」 こんな感じだと思います。 実際にはどのようなDB設計をしているのかわからないので僕なりの考えです。 >履歴用のテーブルを作る方法についても具体的な内容 最低限必要な項目は「出荷した日付」と「商品名もしくはコードされているならコード名」と「個数」だと思います。 これが絶対ではないので参考程度に見てください

th-terra
質問者

補足

大変参考になりました。 ありがとうございます。 例えば大抵のショッピングカートシステム等では、商品が売れると在庫数が自動的に減り、履歴も残るような動作をそのままもってきたいと考えています。 この「商品が売れる」動作と「商品を出荷する」という動作は同一と考えて良いですよね……?

  • maguro999
  • ベストアンサー率21% (59/273)
回答No.1

1. 在庫のデータを更新する。 2. ログ用のテーブルを用意してログをいれていく。 or ログをテキスト形式で出力する。 3. 在庫が0だったら品切れになる処理をする。 >以上の問題点を解決できるような書籍やホームページを探しているのですが、見つけることができません。 基本過ぎてそれだけに特化しているWebページや本があるとは思えません。 SQLの基本中の基本だけできます。 これができないようだと自分で構築はあきらめて 外部に外注に出すことをすすめます。

th-terra
質問者

お礼

基本中の基本なんですね……。 それぞれの項目についてはすべき作業が分かりました。 ありがとうございます。 簡易日記ソフトや掲示板等のサンプルを載せている書籍はよく見かけるのですが、なぜか在庫管理のような業務管理を行うサンプルを見かけません。

関連するQ&A