- 締切済み
Accessで、在庫表を作りたいのですが・・・
noname#22222の回答
s_husky です。 <入庫履歴> ID 入庫日 製品名 数量 1 2006/10/01 A 2 2 2006/10/02 A 2 3 2006/10/03 B 2 <出庫履歴> ID 出庫日 製品名 数量 1 2006/11/01 A 1 2 2006/11/02 A 1 3 2006/11/03 C 1 <在庫表> 製品名 数量 A 2 B 1 A -2 C -1 <入庫履歴>と<出庫履歴>から<在庫表>を生成するという手もあります。 Private Sub コマンド0_Click() CnnExecute ("DELETE FROM 在庫表") CnnExecute ("INSERT INTO 在庫表 " & _ SELECT 製品名, COUNT(数量) AS 数量 FROM 入庫履歴 GROUP BY 製品名") CnnExecute ("INSERT INTO 在庫表 " & _ SELECT 製品名, COUNT(数量) * -1 AS 数量 FROM 出庫履歴 GROUP BY 製品名") End Sub なお、CnnExecute() は次のようです。 Public Function CnnExecute(ByVal strSQL As String) As Boolean On Error GoTo Err_CnnExecute Dim isOK As Boolean Dim cnn As ADODB.Connection isOK = True Set cnn = CurrentProject.Connection With cnn .Errors.Clear .BeginTrans .Execute strSQL .CommitTrans End With Exit_CnnExecute: On Error Resume Next cnn.Close Set cnn = Nothing CnnExecute = isOK Exit Function Err_CnnExecute: isOK = False If cnn.Errors.Count > 0 Then ErrMessage cnn.Errors(0), strSQL cnn.RollbackTrans Else MsgBox "プログラムエラーが発生しました。システム管理者に報告して下さい。(CnnExecute)", _ vbExclamation, " 関数エラーメッセージ" End If Resume Exit_CnnExecute End Function
関連するQ&A
- Accessで在庫管理をする際の日付の扱いについて
いつも大変お世話になっております。m(_ _)m Accessで新規データベースを作成している最中です。 テーブルの作りを簡単に説明すると、 (1)「入庫受付」テーブルがあって、そこには、製品名・数量・入庫受付日等の情報が入っています。 (2)「出庫処理」テーブルがあって、そこにも、製品名・数量・出庫受付日等の情報が入っています。 この2つのテーブルを、期間を指定して、「在庫表」として出力する必要があります。 たとえば、当月のデータを見たい場合は、「10月度_在庫表」として、(1)の数量はプラス・(2)の数量はマイナスで、差引きの残(在庫数)を表示します。 このような目的でテーブルを作る場合に、ご相談なんですが、(1)(2)とも「日付」を入れるフィールドは「日付/時刻型」がいいのでしょうか? 期間を指定して数量を表示したい場合などは、この欄が「テキスト型」だとうまくいかないのでしょうか? なぜ、このような質問をするかというと、「日付/時刻型」にしておくと例えば「2006/10/30」という情報を入力したいときに、定型入力が使えませんよね?定型入力に「0000\/00\/00」と指定しておいて、日付は数字だけを入力すればいいようにしたいのですが、うまくいきません。 入力の簡単さを考えると「テキスト型」にしたいのですが、後々のことを考えると、たとえ入力が面倒でも「日付/時刻型」に設定しておくべきなのでしょうか? 回答をよろしくお願いします。
- ベストアンサー
- オフィス系ソフト
- アクセスでの在庫管理(在庫期間が知りたい)
アクセスを使って商品の在庫管理を行おうと試行錯誤しています。 1.入庫テーブル(商品名、入庫日、入庫数)に入力。 2.出庫テーブル(商品名、出庫日、出庫数)に入力。 これらから、商品と入庫日をロット単位とし、このように在庫を計算しています。 入庫の合計―出庫の合計=在庫 ここからネックになっているのが、在庫期間をどうあらわすかと言う点です。 通常、今日までの在庫期間は 在庫期間=今日―入庫日 によって表しています。 ここまでは出来ていますが、さらに一歩進めて 日にちを毎回指定し 指定日からの在庫期間=指定日―入庫日 のような感じで在庫期間を表示させたいのですが どのようにクエリを作ったらよいのでしょうか? このようなフローで良いのか、 参考HP等ありましたらアドバイス頂けませんか?
- ベストアンサー
- オフィス系ソフト
- エクセルでの在庫管理表について。
A B C D E 1列 品名 現在庫 入庫 出庫 総在庫 2列 AAA001 100 100 50 150 3列 AAA002 150 120 20 250 ・ ・ ・ このような在庫管理表を会社で作りました。 上司から「最初はこれでもいいんだけど、入庫と出庫はいつも変動するから、次回入力時にもいちいち現在庫も書き換えるのは面倒。入庫と出庫だけ書き換えるだけで合計が出るようにしてくれ!」と言われたのですが、つまり(総在庫+入庫-出庫=総在庫)にしたいそうです。エクセルでは出来ませんよね? 現在庫が無いものだったら、(入庫+出庫=総在庫)で出来るんですが。 どうやったらうまく作れるのかわからずこちらで質問させて頂きました。 説明が下手ですみません。補足要求があれば、補足しますので回答お待ちしております。
- ベストアンサー
- オフィス系ソフト
- 在庫表と売り上げ表
在庫表 売り上げ 商品 入庫 出庫 残 日付け 売り先 商品名 台数 A 8 3 5 7月10日 K商店 A 3 B 10 4 6 7月10日 S商店 B 4 C 7 7 Aの商品を売り上げた時、在庫表のAの出庫の欄に自動的に入る様(シートを替えて)出来る方法は、ないですか?
- 締切済み
- その他(業務ソフトウェア)
- 現在庫算出方法についてお教え下さい
在庫管理についてお教え下さい 私の行なっている現在庫の算出方法が妥当かどうか御教え頂けないでしょうか? 在庫管理を会社で行なっています。小さい会社なので、商品もそれほどあるわけではありません。 入庫したら以下の方法で入庫処理しています。 ハンディターミナルで商品のバーコードをスキャンし、個数を入力。PCに転送しMYSQL5で管理。 テーブルは、 T_入庫マスター 商品コード,入庫数 出庫したら以下の方法で出庫処理しています。 ハンディーターミナルで商品のバーコードをスキャンし、個数を入力。PCに転送しMYSQLで管理。 テーブルは、 T_出庫マスター 商品コード,出庫数 さらにビューを2つ作っています。 V_入庫マスター select 商品コード,sum(入庫数) As 入庫数 from T_入庫マスター group by 商品コード V_出庫マスター select 商品コード,sum(出庫数) As 出庫数 from T_出庫マスター group by 商品コード 現在庫を求めるには、全ての入庫から全ての出庫を引いたものが現在庫になるはずなので、もう一つビューを作ります。 V_現在庫マスター select V_入庫マスター.商品コード,V_入庫マスター.入庫数 - V_出庫マスター.出庫数 As 現在庫 from V_入庫マスター inner join V_入庫マスター.商品コード = V_出庫マスター.商品コード まだ作り始めて間もないのですが(今まではExcelで在庫管理してました)、果たして現在を求めるのにこのようなやりかたで良いのかどうか不安になりました。 このやり方がスマートかどうか教えて頂けませんでしょうか? 毎日の入出庫は、取扱点数50点。入庫、出庫はマチマチですが各商品10前後です。 よろしくお願いいたします。
- ベストアンサー
- その他(データベース)
- access 更新クエリ?追加クエリ?
access超初心者です。 いま、下記のような在庫表をつくっています。 (出庫テーブルは省略してます) 入庫テーブル ID 入庫日付 大分類 中分類 小分類 数量 在庫テーブル ID 大分類 中分類 小分類 最初の数 入庫数 出庫数 入庫更新クエリ *入庫→在庫 大分類 中分類 小分類 ・入庫の全レコードと在庫表の同じ結合フィールドのレコードだけを含める で結合しています。 *在庫表の入庫数 レコードの更新で NZ([在庫数]![入庫数],0)+NZ([入庫]![数量],0) といれています。 入庫テーブルに入力していき その都度、 入庫更新クエリにて更新し 在庫表に反映させていきたいと思っています。 入庫表には、この先 在庫表にないものもでてくるので 在庫表にないものは 追加、あるものは、更新としていきたいです。 今の状態だと 入庫表のものは、更新クエリでいったん在庫表に反映されるのですが 入庫表にレコードを追加して また更新クエリをかけると 在庫表が、前に更新したレコードの分も 重複して反映してしまいます。 これをなくすには、どういった方法が ありますか? 宜しくお願いいたします
- ベストアンサー
- オフィス系ソフト
- accessで在庫管理
こんにちは。 accessで商品(部品)の在庫管理をすることになりました。 1)商品情報(型番・部品名・仕入元など)の基本情報の入ったテーブルを作り 2)型番をキーにして出荷入荷の記録をつけ(仕入日・出荷日・数量・出荷先など)て行きたいとおもっています。 今在庫がいくつあるのか確認しつつ入力したい関係で、例えば型番を抽出条件にすると今までのレコードが一覧で見れて、(上部に部品に関する1)の情報が見れて)一番下に新しいレコードして追加入力をすることができるような形にしたいのですが、 どのようなテーブル形式、リレーションシップをとったらよろしいでしょうか? 参考になる本が見当たらず困っています。 よろしくお願いします。
- ベストアンサー
- その他(データベース)
- FileMakerで在庫管理をしたい!
FileMakerで在庫管理をしたい! 現在在庫管理をエクセルでやっていますが、 これからはファイルメーカーで管理したいと思いいろいろ試みています。 そこで、 商品テーブルと在庫テーブルと移動テーブルをつくりました。 ■商品テーブル 商品ID 商品名 ■在庫テーブル 在庫ID 商品ID 保管場所 棚卸在庫数 現在庫数(Calculation) 入庫日 ■移動テーブル 移動ID 在庫ID 移動数 移動先保管場所 移動日 商品テーブルと在庫テーブルは商品IDでリレーション 在庫テーブルと移動テーブルは在庫IDでリレーション 在庫の出し入れ移動が激しいので、移動入力を簡単にできたらと思います。 入庫入力は在庫テーブルに新規レコードで入力 出庫入力は移動先保管場所を"出庫"というふうにしてやろうかと考えています。 問題点 ・移動を入力する際に、保管場所と商品名で目的の在庫を絞り込みたいのですが、うまくポータルに表示されません。リレーションの組み方が間違ってる?? ・現存の在庫を他の保管場所に移動するとき、 移動先保管場所を入力すると自動的に在庫テーブルに新規レコードとして在庫が移動されるようにしたいがやりかたがわからない。 本をみても目的の情報にたどりつけないので、こちらの掲示板がたよりです。 助けてください!!
- 締切済み
- その他(データベース)
- Accessで、在庫管理システムを作りたい
いつも大変お世話になっております。m(_ _)m Accessで、以下のような条件の在庫管理システムを作りたいと考えていますが、テーブルデザインをどのように作成すればいいかアドバイスをお願いしたいと思います。 00:本社 01:関東支社 02:中部支社 03:関西支社 04:九州支社 と場所があり、それぞれに製品があります。 本社 → 関東 → 中部 とか 関西 → 関東 → 本社 とか いろいろなルートで製品が動きます。 製品が動いた際に、「転送伝票」が発行され、00:本社 → 01:関東へ100個転送というような情報が発生します。 それらの情報をDBとして蓄積し、例えば「本社の今日の在庫を見たい」という時に、「00:本社」を指定すればその時点での型番・在庫数が見れるという形にしたいです。 場所が複数あり、入庫すればプラス。出庫すればマイナスで、在庫表を見たいわけですが、どのようなテーブルを構成すれば良いかアドバイスください。 質問内容が分かりにくい場合はご指摘ください。 よろしくお願い致します。
- ベストアンサー
- オフィス系ソフト
お礼
詳細な返答ありがとうございました。 少し時間がかかるかと思いますが、挑戦してみます。 再度、質問させていただく場合もありますが、その時はよろしくお願いします。m(_ _)m