アクセスコーディングSQLでマイナス在庫値を修正するには?

[ad_1]

やあ、
テーブルが 2 つあり、1 つは在庫あり、もう 1 つは在庫切れのテーブルです。 問合せからの在庫確認ですが、在庫がマイナスで在庫切れの場合はお取引を承ります。

入庫・出庫・在庫残高
120/100/20
0/40/-20

私が試したこと:

SELECT tblRecvB.MCode, tblRecvB.GroupName, tblRecvB.MatName, tblRecvB.UOM, Sum(tblRecvB.Qty) AS Quantity, tblRecvB.Price
FROM tblRecvB
GROUP BY tblRecvB.MCode, tblRecvB.GroupName, tblRecvB.MatName, tblRecvB.UOM, tblRecvB.Price
UNION SELECT tblIssueB.MCode, tblIssueB.GroupName, tblIssueB.MaterialName, tblIssueB.UOM,Sum(-[Qty]) AS Quantity,  tblIssueB.Price
FROM tblIssueB
GROUP BY tblIssueB.MCode, tblIssueB.GroupName, tblIssueB.MaterialName, tblIssueB.UOM, tblIssueB.Price;

1 解決

正解です。最初に 120 個のアイテムを販売し、100 個を販売して 20 個を残しました。その後、さらに 40 個のアイテムを削除しました。これは、在庫レベルがマイナスになったことを意味します。

これは実際に起こります。大量の注文はすぐに約定することはできませんが、注文は処理され、残りの残高は到着時に発送されます。 負のストイック レベルは、次の入荷のアイテム数がすでに割り当てられていることを意味します (そのため、発送前にサプライヤーの注文を変更する必要があります)。

DB の列に付けた名前は、データベースにとっては何の意味もないことに注意してください。「在庫」、「在庫切れ」、および「在庫残高」によって、SQL が特定のアクションを自動的に実行するわけではありません – 負の在庫を防ぎたい場合注文を監視して拒否するコード次第ですが、それはビジネスルールであるため、DL コードではなく BL コードです。

[ad_2]

Source link

コメント

タイトルとURLをコピーしました