• ベストアンサー

Accessで入荷処理をしようとしているのですが・・・

専用ソフトを買うと値が張るので、Accessで作ろうとしているのですが・・・とりあえず、マスタテーブルを作ってそこに商品の名前やらサイズやら色々情報を打ち込んでいきました。 次に、毎月何をいくつ入荷しているか、という情報を入力する欄を作ろうとして、非常に困っています。 実際に作ってみると、毎月、商品別で入荷数を入力しないといけないので、月ごとに欄が増えていくことになります。 マスタテーブルに毎月の入荷数の欄を作ると、どんどん横に伸びていくことになります。 それに、このプログラムは完成後は素人が扱う予定なので、毎月マスタテーブルを開いて素人が欄を追加していかなければいけないことになります。 不便な上、いつデータを間違った操作で壊されるか分かったものじゃありませんw 何かいい方法を知っている方、ご教授願います。 ちなみに、私も他のプログラムはある程度やったことありますが、accessに関しては殆ど知りませんw

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

  • ベストアンサー
  • imogasi
  • ベストアンサー率27% (4737/17070)
回答No.2

アクセスの解説書を読んでない状態ではないですか。 アクセスなどデータベースの基本軸が意識されていない。 (1)ある程度の期間データが動かない(追加・変更・削除)もの。 動きが少ないもの  マスタ      商品に関する情報(価格・形状・その他)      取引会社に関する(住所その他属性)      商品価格に関する情報      など (2)売上とか、出荷など(1)に関し、繰り返し発生することが当たり前の情報           トランザクション(アクセス用語ではない、広い意味)      会社の情報(最低限、IDなど      商品の情報(最低限、IDなど      入出荷量などの情報      時期・日付の情報(期間区分、締切り(会計、納期などのため) これら(1)(2)は記録するテーブルを分けるのが原則です。1対多の関係になります。 データベースソフトで必要な都度、情報を結合します。 ーー (3)(1)(2)とも、テーブルへデータを記録します (4)しかし直接テーブルに触るような設計にしないのが常識です。 ここがエクセルと違う大きな点です。データを部外者には見せない・隠す意味も出てきます。 (5)フォームを使って、入力経路を一本化します。    また入力情報を最低限化する      入力情報を正確化する      入力情報入力を迅速・最小限化する ため色々なテクニック・仕組みを使います。    商品コードを入力すると商品名が出て確認できるとか    選択コントロールを設けるとか (6)その背後にはアクセスでは、キーによるデータの合成がクエリなどで、簡単迅速に行える仕組みが、担保されている(備わっている)ことがあります。 >何かいい方法を知っている方、ご教授願います。 データベースそのものの理解です。ある詳しい人なら知っているというレベルの問題ではありません。 >私も他のプログラムはある程度やったことありますが データベースとかシステム設計などせず、上から降りてきた課題を コーディングテクニックで完成させていたのではないですか。 >毎月、商品別で入荷数を入力しないといけないので 入荷管理で、商品別に記録するのは、当たり前だが、月別に入荷データ(テーブル)を別テーブルにすべきかというと、量にもよるが、できるだけ長期間蓄積的に 考えていると思う。アクセス等以上のデータベースソフトでは、期間を限定抜き出しのクエリは簡単なので。 ーーー 質問の状態では・私が上記で言っていることも含め、教科書的で A。システムは入力が一番大事(大変だということ)。アウトプットはシステム当事者が苦労すれば済む。 B・例えばバーコードシステムのような、仕組みを持ち込まないと スムーズに長続きしないように思う。 現場で苦労していて、改善しようという声が現場から上がってきていますか。(>素人が扱う予定は、入力専任担当のこと?現場の人?) なんとなく質問者あたりが独断専行で、「やる」としてはじめているようなにおいがする。現場を巻き込まないと色々問題が発生するかも。    

その他の回答 (2)

  • CHRONOS_0
  • ベストアンサー率54% (457/838)
回答No.3

>毎月何をいくつ入荷しているか、という情報を入力する欄を作ろうとして これは商品マスタには入れません マスタに入れるのは半固定的な基本データ 入荷のような活動記録は別のテーブルにします >どんどん横に伸びていくことになります。 これじゃ困りますから毎月のデータは新しいレコードとして縦に展開するようにします >私も他のプログラムはある程度やったことありますが Accessはお手軽なものとはいえ、開発ツールです 必要とされるのはプログラムの経験よりもシステム設計的な知識・経験です Accessを本を読まずに始めることは無理ですね 簡単そうなものからはじめ何冊か読んでください

回答No.1

1.「商品の名前やらサイズやら色々情報」のマスタとなるテーブル。 2.「毎月何をいくつ入荷しているか」の明細テーブル。 が必要です。 「毎月、商品別で入荷数を入力しないといけない」→これは2.を基にクエリで自動集計すればよいです。 必要ならそれをテーブル作成クエリでテーブル化すればよいかと。