在庫数の表示(Dsum関数)(その2)


━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
vol297

これならわかるマイクロソフトアクセス活用法
            -->在庫数の表示(Dsum関数)(その2)
              
発行者:高内 章治 2017年10月18日
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
┏ 今日の内容 ━━━━━━━━━━━━━━━━━━━━━━━━┓

┃【01 - ご挨拶    】
┃【02 - トピックス  】在庫数の表示(Dsum関数)(その2)

┃【03 - 編集後記    】

┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛

─────────────────────────────────
【01 - ご挨拶    】          
─────────────────────────────────

こんにちは、高内(こうない)です。

今回は、

「在庫数の表示(Dsum関数)(その2)」

についてお話したいと思います。




─────────────────────────────────

【02 - トピックス】: 在庫数の表示(Dsum関数)(その2)

─────────────────────────────────

お客様から質問がありました。

在庫管理で、出庫処理をおこなっているときに、出庫数を入力するときに在庫数の表示をおこないたいということです。
在庫不足についてはアラームも出したいそうです。


以前も同じような質問でメルマガを書きました。

再度説明します。

  1. 在庫管理は、以下のような作業をおこないます。

    • 入庫画面で製品別、ロット別に入庫数を入力します。
    • 入庫すると、在庫になります。
    • 出庫画面で、製品別、ロット別に出庫数を入力します。
    • 製品別、ロット別に入庫数から出庫数を引いて残りの在庫数になります。

    テーブルの項目は、

    • 製品コード
    • ロット番号
    • 入庫数
    • 出庫数

    とします。

    「在庫数」の表示は、以下のようにおこないます。


  2. まず、出庫画面に「在庫数」を表示するテキストボックスを作成します。

    ここに、「在庫数」を表示するようにします。
    テキストボックスの名前を「在庫数表示」などにします。


  3. 出庫画面で、「製品コード」を入力したときに、在庫がないものを 表示します。

    「製品コード」のテキストボックスの更新前処理で在庫数を計算して「在庫数」を表示しします。
    在庫不足では、アラームを出します。

    「在庫数」の計算で、簡単な方法は、Dsum関数です。
    合計を計算します。

    上のテーブルを使って、クエリを作成します。
    「製品コード」別、「ロット番号」別に「入庫数」から「出庫数」を引いて「在庫数」を計算します。
    クエリ名を「在庫クエリ」などにします。

    この段階では、フォームに入力した「製品コード」しかわかっていませんので、「製品コード」別の「在庫数」を計算します。

    以下のようになります。

    Me!在庫数表示 = DSum("[在庫クエリ]![在庫数]","在庫クエリ","製品コード='" & Me.製品コード & "'")

    「Me.製品コード」がフォームに入力した「製品コード」です。
    「Me!在庫数表示」に「在庫数」を入れます。

    このとき、在庫がない場合は、警告をだします。
    警告を出して、「Cancel = True」で入力前に戻ります。


    以下のようになります。

    *****************************
    If IsNull(Me!在庫数表示)  or  (Me!在庫数表示 <= 0  Then

    MsgBox ("在庫がありません。")
    Cancel = True

    End If

    ***************************
    のような感じです。


    在庫があれば、「製品コード」別の在庫数を表示します。


  4. 在庫があれば、そのまま次に進みます。

    次に「ロット番号」を入力したときに「在庫数」を再度、計算します。
    「ロット番号」のテキストボックスの更新前処理で「在庫数」を計算します。

    注意しないといけないのは、「3」のやり方だと「製品コード」別の在庫になります。
    「製品コード」別、「ロット番号」別の在庫ではありません。

    ですので、「在庫クエリ」に、
    「製品コード」と「ロット番号」を合わせた項目を新しく作成します。
    「製品コード_ロット番号」などにします。

    そして、

    製品コード_ロット番号1=Me.製品コード+Me!ロット番号

    でフォームから、「製品別コード」と「ロット番号」を合わせたデータを取り込みます。
    そして「在庫数」を計算します。

    Me!在庫数表示 = DSum("[在庫クエリ]![在庫数]","在庫クエリ","製品コード_ロット番号='" & .製品コード_ロット番号1 & "'")

    で「製品コード」別、「ロット番号」別の在庫数を計算します。

    そして、画面に表示します。
    上の「3」ように「ロット番号」別に在庫数がnullやゼロ、マイナスのときは警告を出します。

    問題なければ次に進みます。


  5. 出庫数量を入力します。

    ここでも出庫数量をチェックします。
    出庫数のテキストボックスの更新前処理でチェックします。

    「出庫数」が「在庫数」より、大きくなったら警告をだします。
    Cancel = Trueで入力前に戻ります。

    「在庫数」より入力した「出庫数」が小さい場合か等しいデータ入力出来るようにします。


  6. 出庫数のデータを保存します。


参考にしてください。



─────────────────────────────────
【03 - 編集後記    】       
─────────────────────────────────

衆議院選挙が、今週の22日(日)おこなわれます。

自民党と公明党の与党が優勢のようです。

民進党から新しい希望の党や立憲民主党に議員が移って新しく立候補します。

でも、野党は、安倍政権を倒すことばっかりで、倒すことが目的になっているようです。

倒した後の、経済政策、社会保障、安全保障などの政策が聞きたいのですが、よくわかりません。

やっぱり政党は、まず政策だと思います。

消費税の増税に反対なのであれば、具体的な対案が聞きたいですね。
そこが重要なのですが。


◆私がアクセスをマスターできたのは!!
http://www.sk-access.com/kyozai/zaiko1.html  

テーブル作成からVBAまでマスターできます。 
「在庫管理システムをアクセスで作ってみよう」教材です。
http://www.sk-access.com/kyozai/zaiko2.html  


━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
●ご意見・ご感想・ご質問
 
『メルマガでもっとお役にたてる情報を配信したいと思いますので、日ごろから疑問に思っていることを教えてください。
宛先はこちらへです』

  •  kohnai★vega.ocn.ne.jp
      (高内:こうない:)
    (メールするときは、★を@に変えてください)

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━


◎「これならわかるマイクロソフトアクセス活用法」 のバックナンバー・配信停止はこちら

archive.mag2.com/0000222659/index.html

◎以下のホームページからでもバックナンバーを見ることができます。

http://www.sk-access.com/mailmaga/index.html

登録・解除につきましてはご自身でお願いいたします。

※このメールマガジンの転送はOKですが、掲載された記事の内容を許可無く転載することをを禁止させて頂きます。
必ず事前にご相談ください。

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━


1週間でアクセス(Access)のシステム開発ができる〜
「在庫管理システムをアクセスで作ってみよう」教材

「アクセスのプログラム/システムを短期間で開発したい方」、
「アクセスのフォーム/VBAを完全にマスターしたい方」のための
アクセス(Access)を使って1週間でシステム開発する究極の方法とは?

「アクセス(Access)のシステムを無料のSQL Server 2016 Expressへ
移行してみよう」教材

あなたの会社のアクセス(Access)のデータベースやシステムに不安を感じていませんか?
アクセスのデータ量が多くなり処理スピードが遅くなった。
アクセスのデータを共有したい。
セキュリティに不安がある。などと、感じている方は!!
(SQL Server 2016 Expressバージョンです。)


「アクセス(Access)プログラムの仕様書の作り方」教材
マイクロソフトアクセスを使用して、プログラムの作成/システム開発をおこないたい方の為に、
アクセス(Access)のプログラム開発に成功するために絶対に必要な「仕様書」とは?



[↑一番上へ]
[マイクロソフトアクセス活用法(メールマガジン)(ホームへ)]
11:382301

アクセス全体

VBA

SQL Server