Difference between revisions of "VbzCart/queries/qryRstkItms expected"
Jump to navigation
Jump to search
m (→About: used by: ?) |
(fixed SQL syntax, I hope) |
||
Line 7: | Line 7: | ||
** '''2008-11-24''' '''QtyRecd''' falls back on '''QtyFiled''' if null | ** '''2008-11-24''' '''QtyRecd''' falls back on '''QtyFiled''' if null | ||
** '''2008-12-04''' renamed: qryRstkItms_en_route → qryRstkItms_expected | ** '''2008-12-04''' renamed: qryRstkItms_en_route → qryRstkItms_expected | ||
− | + | ** '''2010-01-03''' fixed syntax: have to recalculate aggregate functions to use them in a HAVING clause (bleh) | |
==SQL== | ==SQL== | ||
<section begin=sql /><mysql>CREATE OR REPLACE VIEW qryRstkItms_expected AS | <section begin=sql /><mysql>CREATE OR REPLACE VIEW qryRstkItms_expected AS | ||
Line 20: | Line 20: | ||
LEFT JOIN qryRstkItms_active AS rqi ON (rc.ID_Restock=rqi.ID_Restock) AND (rcl.ID_Item=rqi.ID_Item) | LEFT JOIN qryRstkItms_active AS rqi ON (rc.ID_Restock=rqi.ID_Restock) AND (rcl.ID_Item=rqi.ID_Item) | ||
GROUP BY rqi.ID_Restock, rqi.ID_Item | GROUP BY rqi.ID_Restock, rqi.ID_Item | ||
− | HAVING | + | HAVING (SUM(rqi.QtyOrd)-SUM(IFNULL(rcl.QtyRecd,rcl.QtyFiled)))>0;</mysql> |
<section end=sql /> | <section end=sql /> |
Revision as of 14:53, 3 January 2010
About
- Returns: Restock items requested (ordered), not yet received, but possibly expected because the restock request hasn't been terminated (closed, orphaned, or killed).
- Requires:
- REDIRECT Template:l/vc/table, rstk_rcd,
- REDIRECT Template:l/vc/query
- Used by:
- History:
- 2008-11-19 Created for new restock process
- 2008-11-24 QtyRecd falls back on QtyFiled if null
- 2008-12-04 renamed: qryRstkItms_en_route → qryRstkItms_expected
- 2010-01-03 fixed syntax: have to recalculate aggregate functions to use them in a HAVING clause (bleh)
SQL
<mysql>CREATE OR REPLACE VIEW qryRstkItms_expected AS SELECT
rqi.ID_Restock, rqi.ID_Item, SUM(rqi.QtyOrd) AS QtyOrd, SUM(IFNULL(rcl.QtyRecd,rcl.QtyFiled)) AS QtyRecd
FROM
(rstk_rcd_line AS rcl LEFT JOIN rstk_rcd AS rc ON rcl.ID_RstkRcd=rc.ID) LEFT JOIN qryRstkItms_active AS rqi ON (rc.ID_Restock=rqi.ID_Restock) AND (rcl.ID_Item=rqi.ID_Item)
GROUP BY rqi.ID_Restock, rqi.ID_Item HAVING (SUM(rqi.QtyOrd)-SUM(IFNULL(rcl.QtyRecd,rcl.QtyFiled)))>0;</mysql>