Difference between revisions of "VbzCart/procs/Upd CatItems fr StkItems StkBins"
Jump to navigation
Jump to search
(New page: ==About== * '''Action''': updates availability from current stock ==SQL== <section begin=sql /><mysql>CREATE PROCEDURE Upd_CatItems_fr_StkItems_StkBins() UPDATE cat_items AS i LEFT JOI...) |
(isEnabled condition) |
||
(2 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
==About== | ==About== | ||
* '''Action''': updates availability from current stock | * '''Action''': updates availability from current stock | ||
+ | * '''Input''': {{vbzcart|table|stk_items}}, {{vbzcart|table|stk_bins}} | ||
+ | * '''Output''': {{vbzcart|table|cat_items}} | ||
+ | * '''History''': | ||
+ | ** '''2011-01-24''' Corrected '''i.QtyInStock''' to '''i.QtyIn_Stk''' | ||
+ | ** '''2012-02-06''' Added "AND (sb.isEnabled)" condition (isEnabled flag is new) | ||
==SQL== | ==SQL== | ||
− | <section begin=sql /><mysql>CREATE PROCEDURE Upd_CatItems_fr_StkItems_StkBins() | + | <section begin=sql /><mysql>DROP PROCEDURE IF EXISTS `Upd_CatItems_fr_StkItems_StkBins`; |
+ | CREATE PROCEDURE Upd_CatItems_fr_StkItems_StkBins() | ||
UPDATE cat_items AS i LEFT JOIN ( | UPDATE cat_items AS i LEFT JOIN ( | ||
SELECT | SELECT | ||
Line 8: | Line 14: | ||
SUM(si.Qty) AS QtyInStock | SUM(si.Qty) AS QtyInStock | ||
FROM stk_items AS si LEFT JOIN stk_bins AS sb ON si.ID_Bin=sb.ID | FROM stk_items AS si LEFT JOIN stk_bins AS sb ON si.ID_Bin=sb.ID | ||
− | WHERE (sb.isForSale) AND ISNULL(sb.WhenVoided) AND ISNULL(si.WhenRemoved) | + | WHERE (sb.isForSale) AND (sb.isEnabled) AND ISNULL(sb.WhenVoided) AND ISNULL(si.WhenRemoved) |
GROUP BY ID_Item | GROUP BY ID_Item | ||
) AS sig ON i.ID=sig.ID_Item | ) AS sig ON i.ID=sig.ID_Item | ||
SET | SET | ||
− | i. | + | i.QtyIn_Stk = sig.QtyInStock, |
i.isForSale = i.isInPrint OR (sig.QtyInStock > 0);</mysql> | i.isForSale = i.isInPrint OR (sig.QtyInStock > 0);</mysql> | ||
<section end=sql /> | <section end=sql /> |
Latest revision as of 19:07, 6 February 2012
About
- Action: updates availability from current stock
- Input: stk_items, stk_bins
- Output: cat_items
- History:
- 2011-01-24 Corrected i.QtyInStock to i.QtyIn_Stk
- 2012-02-06 Added "AND (sb.isEnabled)" condition (isEnabled flag is new)
SQL
<mysql>DROP PROCEDURE IF EXISTS `Upd_CatItems_fr_StkItems_StkBins`; CREATE PROCEDURE Upd_CatItems_fr_StkItems_StkBins()
UPDATE cat_items AS i LEFT JOIN ( SELECT si.ID_Item, SUM(si.Qty) AS QtyInStock FROM stk_items AS si LEFT JOIN stk_bins AS sb ON si.ID_Bin=sb.ID WHERE (sb.isForSale) AND (sb.isEnabled) AND ISNULL(sb.WhenVoided) AND ISNULL(si.WhenRemoved) GROUP BY ID_Item ) AS sig ON i.ID=sig.ID_Item SET i.QtyIn_Stk = sig.QtyInStock, i.isForSale = i.isInPrint OR (sig.QtyInStock > 0);</mysql>