IDEMPIERE-385 / QA migration scripts
This commit is contained in:
parent
3f1f81078b
commit
bb76dee97a
|
@ -1,13 +1,8 @@
|
||||||
--create views
|
CREATE OR REPLACE VIEW m_product_stock_v AS
|
||||||
CREATE OR REPLACE VIEW M_PRODUCT_STOCK_V
|
SELECT ms.isactive, ms.created, ms.createdby, ms.updated, ms.updatedby, mp.value, mp.help, ms.qtyonhand - NVL(mr.qty,0) AS qtyavailable, ms.qtyonhand, NVL(mr.qty,0) as qtyreserved, mp.description, mw.name AS warehouse, mw.m_warehouse_id, mw.ad_client_id, mw.ad_org_id, mp.documentnote
|
||||||
AS
|
FROM m_storageonhand ms
|
||||||
SELECT
|
JOIN m_product mp ON ms.m_product_id = mp.m_product_id
|
||||||
ms.IsActive, ms.Created, ms.CreatedBy, ms.Updated, ms.UpdatedBy,
|
JOIN m_locator ml ON ms.m_locator_id = ml.m_locator_id
|
||||||
mp.VALUE, mp.help, (ms.qtyonhand - ms.qtyreserved) AS qtyavailable, ms.qtyonhand,
|
JOIN m_warehouse mw ON ml.m_warehouse_id = mw.m_warehouse_id
|
||||||
ms.qtyreserved, mp.description, mw.NAME AS warehouse, mw.m_warehouse_id, mw.ad_client_id,
|
LEFT JOIN m_storagereservation mr ON ms.m_product_id = mr.m_product_id AND mw.m_warehouse_id = mr.m_warehouse_id AND mr.isSOTrx='Y'
|
||||||
mw.ad_org_id, mp.documentnote
|
ORDER BY mw.name;
|
||||||
FROM M_STORAGE ms
|
|
||||||
JOIN M_PRODUCT mp ON ms.m_product_id = mp.m_product_id
|
|
||||||
JOIN M_LOCATOR ml ON ms.m_locator_id = ml.m_locator_id
|
|
||||||
JOIN M_WAREHOUSE mw ON ml.m_warehouse_id = mw.m_warehouse_id
|
|
||||||
ORDER BY mw.NAME;
|
|
||||||
|
|
|
@ -1,78 +1,22 @@
|
||||||
CREATE OR REPLACE VIEW M_PRODUCT_SUBSTITUTERELATED_V AS
|
CREATE OR REPLACE VIEW m_product_substituterelated_v AS
|
||||||
SELECT s.ad_client_id,
|
SELECT s.ad_client_id, s.ad_org_id, s.isactive, s.created, s.createdby, s.updated, s.updatedby, s.m_product_id, s.substitute_id, 'S' AS rowtype, mp.name, sum(ms.qtyonhand - NVL(mr.qty,0)) AS qtyavailable, sum(ms.qtyonhand) AS qtyonhand, NVL(sum(mr.qty),0) AS qtyreserved, round(max(mpr.pricestd), 0) AS pricestd, mpr.m_pricelist_version_id, mw.m_warehouse_id, org.name AS orgname
|
||||||
s.ad_org_id,
|
|
||||||
s.isactive,
|
|
||||||
s.created,
|
|
||||||
s.createdby,
|
|
||||||
s.updated,
|
|
||||||
s.updatedby,
|
|
||||||
s.m_product_id,
|
|
||||||
s.substitute_id,
|
|
||||||
'S' AS rowtype,
|
|
||||||
mp.name,
|
|
||||||
sum(ms.qtyonhand - ms.qtyreserved) AS qtyavailable,
|
|
||||||
sum(ms.qtyonhand) AS qtyonhand,
|
|
||||||
sum(ms.qtyreserved) AS qtyreserved,
|
|
||||||
ROUND(MAX(mpr.pricestd),0) AS pricestd,
|
|
||||||
mpr.m_pricelist_version_id,
|
|
||||||
mw.m_warehouse_id,
|
|
||||||
org.name AS orgname
|
|
||||||
FROM m_substitute s
|
FROM m_substitute s
|
||||||
JOIN m_storage ms ON ms.m_product_id = s.substitute_id
|
JOIN m_storageonhand ms ON ms.m_product_id = s.substitute_id
|
||||||
JOIN m_product mp ON ms.m_product_id = mp.m_product_id
|
JOIN m_product mp ON ms.m_product_id = mp.m_product_id
|
||||||
JOIN m_locator ml ON ms.m_locator_id = ml.m_locator_id
|
JOIN m_locator ml ON ms.m_locator_id = ml.m_locator_id
|
||||||
JOIN m_warehouse mw ON ml.m_warehouse_id = mw.m_warehouse_id
|
JOIN m_warehouse mw ON ml.m_warehouse_id = mw.m_warehouse_id
|
||||||
JOIN m_productprice mpr ON ms.m_product_id = mpr.m_product_id
|
JOIN m_productprice mpr ON ms.m_product_id = mpr.m_product_id
|
||||||
JOIN ad_org org ON org.ad_org_id = mw.ad_org_id
|
JOIN ad_org org ON org.ad_org_id = mw.ad_org_id
|
||||||
GROUP BY s.ad_client_id,
|
LEFT JOIN m_storagereservation mr ON ms.m_product_id = mr.m_product_id AND mw.m_warehouse_id = mr.m_warehouse_id AND mr.isSOTrx='Y'
|
||||||
s.ad_org_id,
|
GROUP BY s.ad_client_id, s.ad_org_id, s.isactive, s.created, s.createdby, s.updated, s.updatedby, s.m_product_id, s.substitute_id, mw.m_warehouse_id, mpr.m_pricelist_version_id, org.name, mp.name
|
||||||
s.isactive,
|
UNION
|
||||||
s.created,
|
SELECT r.ad_client_id, r.ad_org_id, r.isactive, r.created, r.createdby, r.updated, r.updatedby, r.m_product_id, r.relatedproduct_id AS substitute_id, 'R' AS rowtype, mp.name, sum(ms.qtyonhand - NVL(mr.qty,0)) AS qtyavailable, sum(ms.qtyonhand) AS qtyonhand, NVL(sum(mr.qty),0) AS qtyreserved, round(max(mpr.pricestd), 0) AS pricestd, mpr.m_pricelist_version_id, mw.m_warehouse_id, org.name AS orgname
|
||||||
s.createdby,
|
|
||||||
s.updated,
|
|
||||||
s.updatedby,
|
|
||||||
s.m_product_id,
|
|
||||||
s.substitute_id,
|
|
||||||
mw.m_warehouse_id,
|
|
||||||
mpr.m_pricelist_version_id,
|
|
||||||
org.name,
|
|
||||||
mp.name
|
|
||||||
UNION
|
|
||||||
SELECT r.ad_client_id,
|
|
||||||
r.ad_org_id,
|
|
||||||
r.isactive,
|
|
||||||
r.created,
|
|
||||||
r.createdby,
|
|
||||||
r.updated,
|
|
||||||
r.updatedby,
|
|
||||||
r.m_product_id,
|
|
||||||
r.relatedproduct_id AS substitute_id,
|
|
||||||
'R' AS rowtype,
|
|
||||||
mp.name,
|
|
||||||
sum(ms.qtyonhand - ms.qtyreserved) AS qtyavailable,
|
|
||||||
sum(ms.qtyonhand) AS qtyonhand,
|
|
||||||
sum(ms.qtyreserved) AS qtyreserved,
|
|
||||||
ROUND(MAX(mpr.pricestd),0) AS pricestd,
|
|
||||||
mpr.m_pricelist_version_id,
|
|
||||||
mw.m_warehouse_id,
|
|
||||||
org.name AS orgname
|
|
||||||
FROM m_relatedproduct r
|
FROM m_relatedproduct r
|
||||||
JOIN m_storage ms ON ms.m_product_id = r.relatedproduct_id
|
JOIN m_storageonhand ms ON ms.m_product_id = r.relatedproduct_id
|
||||||
JOIN m_product mp ON ms.m_product_id = mp.m_product_id
|
JOIN m_product mp ON ms.m_product_id = mp.m_product_id
|
||||||
JOIN m_locator ml ON ms.m_locator_id = ml.m_locator_id
|
JOIN m_locator ml ON ms.m_locator_id = ml.m_locator_id
|
||||||
JOIN m_warehouse mw ON ml.m_warehouse_id = mw.m_warehouse_id
|
JOIN m_warehouse mw ON ml.m_warehouse_id = mw.m_warehouse_id
|
||||||
JOIN m_productprice mpr ON ms.m_product_id = mpr.m_product_id
|
JOIN m_productprice mpr ON ms.m_product_id = mpr.m_product_id
|
||||||
JOIN ad_org org ON org.ad_org_id = mw.ad_org_id
|
JOIN ad_org org ON org.ad_org_id = mw.ad_org_id
|
||||||
GROUP BY r.ad_client_id,
|
LEFT JOIN m_storagereservation mr ON ms.m_product_id = mr.m_product_id AND mw.m_warehouse_id = mr.m_warehouse_id AND mr.isSOTrx='Y'
|
||||||
r.ad_org_id,
|
GROUP BY r.ad_client_id, r.ad_org_id, r.isactive, r.created, r.createdby, r.updated, r.updatedby, r.m_product_id, r.relatedproduct_id, mw.m_warehouse_id, mpr.m_pricelist_version_id, org.name, mp.name;
|
||||||
r.isactive,
|
|
||||||
r.created,
|
|
||||||
r.createdby,
|
|
||||||
r.updated,
|
|
||||||
r.updatedby,
|
|
||||||
r.m_product_id,
|
|
||||||
r.relatedproduct_id,
|
|
||||||
mw.m_warehouse_id,
|
|
||||||
mpr.m_pricelist_version_id,
|
|
||||||
org.name,
|
|
||||||
mp.name;
|
|
||||||
|
|
|
@ -1,13 +1,8 @@
|
||||||
--create views
|
CREATE OR REPLACE VIEW m_product_stock_v AS
|
||||||
CREATE OR REPLACE VIEW M_PRODUCT_STOCK_V
|
SELECT ms.isactive, ms.created, ms.createdby, ms.updated, ms.updatedby, mp.value, mp.help, ms.qtyonhand - coalesce(mr.qty,0) AS qtyavailable, ms.qtyonhand, coalesce(mr.qty,0) as qtyreserved, mp.description, mw.name AS warehouse, mw.m_warehouse_id, mw.ad_client_id, mw.ad_org_id, mp.documentnote
|
||||||
AS
|
FROM m_storageonhand ms
|
||||||
SELECT
|
JOIN m_product mp ON ms.m_product_id = mp.m_product_id
|
||||||
ms.IsActive, ms.Created, ms.CreatedBy, ms.Updated, ms.UpdatedBy,
|
JOIN m_locator ml ON ms.m_locator_id = ml.m_locator_id
|
||||||
mp.VALUE, mp.help, (ms.qtyonhand - ms.qtyreserved) AS qtyavailable, ms.qtyonhand,
|
JOIN m_warehouse mw ON ml.m_warehouse_id = mw.m_warehouse_id
|
||||||
ms.qtyreserved, mp.description, mw.NAME AS warehouse, mw.m_warehouse_id, mw.ad_client_id,
|
LEFT JOIN m_storagereservation mr ON ms.m_product_id = mr.m_product_id AND mw.m_warehouse_id = mr.m_warehouse_id AND mr.isSOTrx='Y'
|
||||||
mw.ad_org_id, mp.documentnote
|
ORDER BY mw.name;
|
||||||
FROM M_STORAGE ms
|
|
||||||
JOIN M_PRODUCT mp ON ms.m_product_id = mp.m_product_id
|
|
||||||
JOIN M_LOCATOR ml ON ms.m_locator_id = ml.m_locator_id
|
|
||||||
JOIN M_WAREHOUSE mw ON ml.m_warehouse_id = mw.m_warehouse_id
|
|
||||||
ORDER BY mw.NAME;
|
|
||||||
|
|
|
@ -1,78 +1,22 @@
|
||||||
CREATE OR REPLACE VIEW M_PRODUCT_SUBSTITUTERELATED_V AS
|
CREATE OR REPLACE VIEW m_product_substituterelated_v AS
|
||||||
SELECT s.ad_client_id,
|
SELECT s.ad_client_id, s.ad_org_id, s.isactive, s.created, s.createdby, s.updated, s.updatedby, s.m_product_id, s.substitute_id, 'S'::text AS rowtype, mp.name, sum(ms.qtyonhand - coalesce(mr.qty,0)) AS qtyavailable, sum(ms.qtyonhand) AS qtyonhand, coalesce(sum(mr.qty),0) AS qtyreserved, round(max(mpr.pricestd), 0) AS pricestd, mpr.m_pricelist_version_id, mw.m_warehouse_id, org.name AS orgname
|
||||||
s.ad_org_id,
|
|
||||||
s.isactive,
|
|
||||||
s.created,
|
|
||||||
s.createdby,
|
|
||||||
s.updated,
|
|
||||||
s.updatedby,
|
|
||||||
s.m_product_id,
|
|
||||||
s.substitute_id,
|
|
||||||
'S' AS rowtype,
|
|
||||||
mp.name,
|
|
||||||
sum(ms.qtyonhand - ms.qtyreserved) AS qtyavailable,
|
|
||||||
sum(ms.qtyonhand) AS qtyonhand,
|
|
||||||
sum(ms.qtyreserved) AS qtyreserved,
|
|
||||||
ROUND(MAX(mpr.pricestd),0) AS pricestd,
|
|
||||||
mpr.m_pricelist_version_id,
|
|
||||||
mw.m_warehouse_id,
|
|
||||||
org.name AS orgname
|
|
||||||
FROM m_substitute s
|
FROM m_substitute s
|
||||||
JOIN m_storage ms ON ms.m_product_id = s.substitute_id
|
JOIN m_storageonhand ms ON ms.m_product_id = s.substitute_id
|
||||||
JOIN m_product mp ON ms.m_product_id = mp.m_product_id
|
JOIN m_product mp ON ms.m_product_id = mp.m_product_id
|
||||||
JOIN m_locator ml ON ms.m_locator_id = ml.m_locator_id
|
JOIN m_locator ml ON ms.m_locator_id = ml.m_locator_id
|
||||||
JOIN m_warehouse mw ON ml.m_warehouse_id = mw.m_warehouse_id
|
JOIN m_warehouse mw ON ml.m_warehouse_id = mw.m_warehouse_id
|
||||||
JOIN m_productprice mpr ON ms.m_product_id = mpr.m_product_id
|
JOIN m_productprice mpr ON ms.m_product_id = mpr.m_product_id
|
||||||
JOIN ad_org org ON org.ad_org_id = mw.ad_org_id
|
JOIN ad_org org ON org.ad_org_id = mw.ad_org_id
|
||||||
GROUP BY s.ad_client_id,
|
LEFT JOIN m_storagereservation mr ON ms.m_product_id = mr.m_product_id AND mw.m_warehouse_id = mr.m_warehouse_id AND mr.isSOTrx='Y'
|
||||||
s.ad_org_id,
|
GROUP BY s.ad_client_id, s.ad_org_id, s.isactive, s.created, s.createdby, s.updated, s.updatedby, s.m_product_id, s.substitute_id, mw.m_warehouse_id, mpr.m_pricelist_version_id, org.name, mp.name
|
||||||
s.isactive,
|
UNION
|
||||||
s.created,
|
SELECT r.ad_client_id, r.ad_org_id, r.isactive, r.created, r.createdby, r.updated, r.updatedby, r.m_product_id, r.relatedproduct_id AS substitute_id, 'R'::text AS rowtype, mp.name, sum(ms.qtyonhand - coalesce(mr.qty,0)) AS qtyavailable, sum(ms.qtyonhand) AS qtyonhand, coalesce(sum(mr.qty),0) AS qtyreserved, round(max(mpr.pricestd), 0) AS pricestd, mpr.m_pricelist_version_id, mw.m_warehouse_id, org.name AS orgname
|
||||||
s.createdby,
|
|
||||||
s.updated,
|
|
||||||
s.updatedby,
|
|
||||||
s.m_product_id,
|
|
||||||
s.substitute_id,
|
|
||||||
mw.m_warehouse_id,
|
|
||||||
mpr.m_pricelist_version_id,
|
|
||||||
org.name,
|
|
||||||
mp.name
|
|
||||||
UNION
|
|
||||||
SELECT r.ad_client_id,
|
|
||||||
r.ad_org_id,
|
|
||||||
r.isactive,
|
|
||||||
r.created,
|
|
||||||
r.createdby,
|
|
||||||
r.updated,
|
|
||||||
r.updatedby,
|
|
||||||
r.m_product_id,
|
|
||||||
r.relatedproduct_id AS substitute_id,
|
|
||||||
'R' AS rowtype,
|
|
||||||
mp.name,
|
|
||||||
sum(ms.qtyonhand - ms.qtyreserved) AS qtyavailable,
|
|
||||||
sum(ms.qtyonhand) AS qtyonhand,
|
|
||||||
sum(ms.qtyreserved) AS qtyreserved,
|
|
||||||
ROUND(MAX(mpr.pricestd),0) AS pricestd,
|
|
||||||
mpr.m_pricelist_version_id,
|
|
||||||
mw.m_warehouse_id,
|
|
||||||
org.name AS orgname
|
|
||||||
FROM m_relatedproduct r
|
FROM m_relatedproduct r
|
||||||
JOIN m_storage ms ON ms.m_product_id = r.relatedproduct_id
|
JOIN m_storageonhand ms ON ms.m_product_id = r.relatedproduct_id
|
||||||
JOIN m_product mp ON ms.m_product_id = mp.m_product_id
|
JOIN m_product mp ON ms.m_product_id = mp.m_product_id
|
||||||
JOIN m_locator ml ON ms.m_locator_id = ml.m_locator_id
|
JOIN m_locator ml ON ms.m_locator_id = ml.m_locator_id
|
||||||
JOIN m_warehouse mw ON ml.m_warehouse_id = mw.m_warehouse_id
|
JOIN m_warehouse mw ON ml.m_warehouse_id = mw.m_warehouse_id
|
||||||
JOIN m_productprice mpr ON ms.m_product_id = mpr.m_product_id
|
JOIN m_productprice mpr ON ms.m_product_id = mpr.m_product_id
|
||||||
JOIN ad_org org ON org.ad_org_id = mw.ad_org_id
|
JOIN ad_org org ON org.ad_org_id = mw.ad_org_id
|
||||||
GROUP BY r.ad_client_id,
|
LEFT JOIN m_storagereservation mr ON ms.m_product_id = mr.m_product_id AND mw.m_warehouse_id = mr.m_warehouse_id AND mr.isSOTrx='Y'
|
||||||
r.ad_org_id,
|
GROUP BY r.ad_client_id, r.ad_org_id, r.isactive, r.created, r.createdby, r.updated, r.updatedby, r.m_product_id, r.relatedproduct_id, mw.m_warehouse_id, mpr.m_pricelist_version_id, org.name, mp.name;
|
||||||
r.isactive,
|
|
||||||
r.created,
|
|
||||||
r.createdby,
|
|
||||||
r.updated,
|
|
||||||
r.updatedby,
|
|
||||||
r.m_product_id,
|
|
||||||
r.relatedproduct_id,
|
|
||||||
mw.m_warehouse_id,
|
|
||||||
mpr.m_pricelist_version_id,
|
|
||||||
org.name,
|
|
||||||
mp.name;
|
|
||||||
|
|
|
@ -374,3 +374,6 @@ INSERT INTO AD_Column_Trl (AD_Language,AD_Column_ID, Name, IsTranslated,AD_Clien
|
||||||
CREATE TABLE M_StorageReservation (AD_Client_ID NUMBER(10) NOT NULL, AD_Org_ID NUMBER(10) NOT NULL, Created DATE NOT NULL, CreatedBy NUMBER(10) NOT NULL, DateLastInventory DATE DEFAULT NULL , IsActive CHAR(1) DEFAULT 'Y' CHECK (IsActive IN ('Y','N')) NOT NULL, IsSOTrx CHAR(1) DEFAULT 'Y' CHECK (IsSOTrx IN ('Y','N')), M_AttributeSetInstance_ID NUMBER(10) NOT NULL, M_Product_ID NUMBER(10) NOT NULL, M_Warehouse_ID NUMBER(10) NOT NULL, Qty NUMBER NOT NULL, Updated DATE NOT NULL, UpdatedBy NUMBER(10) NOT NULL, CONSTRAINT M_StorageReservation_Key PRIMARY KEY (M_AttributeSetInstance_ID, M_Product_ID, M_Warehouse_ID))
|
CREATE TABLE M_StorageReservation (AD_Client_ID NUMBER(10) NOT NULL, AD_Org_ID NUMBER(10) NOT NULL, Created DATE NOT NULL, CreatedBy NUMBER(10) NOT NULL, DateLastInventory DATE DEFAULT NULL , IsActive CHAR(1) DEFAULT 'Y' CHECK (IsActive IN ('Y','N')) NOT NULL, IsSOTrx CHAR(1) DEFAULT 'Y' CHECK (IsSOTrx IN ('Y','N')), M_AttributeSetInstance_ID NUMBER(10) NOT NULL, M_Product_ID NUMBER(10) NOT NULL, M_Warehouse_ID NUMBER(10) NOT NULL, Qty NUMBER NOT NULL, Updated DATE NOT NULL, UpdatedBy NUMBER(10) NOT NULL, CONSTRAINT M_StorageReservation_Key PRIMARY KEY (M_AttributeSetInstance_ID, M_Product_ID, M_Warehouse_ID))
|
||||||
;
|
;
|
||||||
|
|
||||||
|
SELECT register_migration_script('201211141732_IDEMPIERE-385_m_storage.sql') FROM dual
|
||||||
|
;
|
||||||
|
|
||||||
|
|
|
@ -8,7 +8,7 @@ CREATE OR REPLACE VIEW m_product_stock_v AS
|
||||||
ORDER BY mw.name;
|
ORDER BY mw.name;
|
||||||
|
|
||||||
CREATE OR REPLACE VIEW m_product_substituterelated_v AS
|
CREATE OR REPLACE VIEW m_product_substituterelated_v AS
|
||||||
SELECT s.ad_client_id, s.ad_org_id, s.isactive, s.created, s.createdby, s.updated, s.updatedby, s.m_product_id, s.substitute_id, 'S'::text AS rowtype, mp.name, sum(ms.qtyonhand - NVL(mr.qty,0)) AS qtyavailable, sum(ms.qtyonhand) AS qtyonhand, NVL(sum(mr.qty),0) AS qtyreserved, round(max(mpr.pricestd), 0) AS pricestd, mpr.m_pricelist_version_id, mw.m_warehouse_id, org.name AS orgname
|
SELECT s.ad_client_id, s.ad_org_id, s.isactive, s.created, s.createdby, s.updated, s.updatedby, s.m_product_id, s.substitute_id, 'S' AS rowtype, mp.name, sum(ms.qtyonhand - NVL(mr.qty,0)) AS qtyavailable, sum(ms.qtyonhand) AS qtyonhand, NVL(sum(mr.qty),0) AS qtyreserved, round(max(mpr.pricestd), 0) AS pricestd, mpr.m_pricelist_version_id, mw.m_warehouse_id, org.name AS orgname
|
||||||
FROM m_substitute s
|
FROM m_substitute s
|
||||||
JOIN m_storageonhand ms ON ms.m_product_id = s.substitute_id
|
JOIN m_storageonhand ms ON ms.m_product_id = s.substitute_id
|
||||||
JOIN m_product mp ON ms.m_product_id = mp.m_product_id
|
JOIN m_product mp ON ms.m_product_id = mp.m_product_id
|
||||||
|
@ -19,7 +19,7 @@ CREATE OR REPLACE VIEW m_product_substituterelated_v AS
|
||||||
LEFT JOIN m_storagereservation mr ON ms.m_product_id = mr.m_product_id AND mw.m_warehouse_id = mr.m_warehouse_id AND mr.isSOTrx='Y'
|
LEFT JOIN m_storagereservation mr ON ms.m_product_id = mr.m_product_id AND mw.m_warehouse_id = mr.m_warehouse_id AND mr.isSOTrx='Y'
|
||||||
GROUP BY s.ad_client_id, s.ad_org_id, s.isactive, s.created, s.createdby, s.updated, s.updatedby, s.m_product_id, s.substitute_id, mw.m_warehouse_id, mpr.m_pricelist_version_id, org.name, mp.name
|
GROUP BY s.ad_client_id, s.ad_org_id, s.isactive, s.created, s.createdby, s.updated, s.updatedby, s.m_product_id, s.substitute_id, mw.m_warehouse_id, mpr.m_pricelist_version_id, org.name, mp.name
|
||||||
UNION
|
UNION
|
||||||
SELECT r.ad_client_id, r.ad_org_id, r.isactive, r.created, r.createdby, r.updated, r.updatedby, r.m_product_id, r.relatedproduct_id AS substitute_id, 'R'::text AS rowtype, mp.name, sum(ms.qtyonhand - NVL(mr.qty,0)) AS qtyavailable, sum(ms.qtyonhand) AS qtyonhand, NVL(sum(mr.qty),0) AS qtyreserved, round(max(mpr.pricestd), 0) AS pricestd, mpr.m_pricelist_version_id, mw.m_warehouse_id, org.name AS orgname
|
SELECT r.ad_client_id, r.ad_org_id, r.isactive, r.created, r.createdby, r.updated, r.updatedby, r.m_product_id, r.relatedproduct_id AS substitute_id, 'R' AS rowtype, mp.name, sum(ms.qtyonhand - NVL(mr.qty,0)) AS qtyavailable, sum(ms.qtyonhand) AS qtyonhand, NVL(sum(mr.qty),0) AS qtyreserved, round(max(mpr.pricestd), 0) AS pricestd, mpr.m_pricelist_version_id, mw.m_warehouse_id, org.name AS orgname
|
||||||
FROM m_relatedproduct r
|
FROM m_relatedproduct r
|
||||||
JOIN m_storageonhand ms ON ms.m_product_id = r.relatedproduct_id
|
JOIN m_storageonhand ms ON ms.m_product_id = r.relatedproduct_id
|
||||||
JOIN m_product mp ON ms.m_product_id = mp.m_product_id
|
JOIN m_product mp ON ms.m_product_id = mp.m_product_id
|
||||||
|
@ -29,3 +29,7 @@ UNION
|
||||||
JOIN ad_org org ON org.ad_org_id = mw.ad_org_id
|
JOIN ad_org org ON org.ad_org_id = mw.ad_org_id
|
||||||
LEFT JOIN m_storagereservation mr ON ms.m_product_id = mr.m_product_id AND mw.m_warehouse_id = mr.m_warehouse_id AND mr.isSOTrx='Y'
|
LEFT JOIN m_storagereservation mr ON ms.m_product_id = mr.m_product_id AND mw.m_warehouse_id = mr.m_warehouse_id AND mr.isSOTrx='Y'
|
||||||
GROUP BY r.ad_client_id, r.ad_org_id, r.isactive, r.created, r.createdby, r.updated, r.updatedby, r.m_product_id, r.relatedproduct_id, mw.m_warehouse_id, mpr.m_pricelist_version_id, org.name, mp.name;
|
GROUP BY r.ad_client_id, r.ad_org_id, r.isactive, r.created, r.createdby, r.updated, r.updatedby, r.m_product_id, r.relatedproduct_id, mw.m_warehouse_id, mpr.m_pricelist_version_id, org.name, mp.name;
|
||||||
|
|
||||||
|
SELECT register_migration_script('201211141733_IDEMPIERE-385_m_viewProduct.sql') FROM dual
|
||||||
|
;
|
||||||
|
|
||||||
|
|
|
@ -43,3 +43,6 @@ UPDATE AD_Field SET Name='Reserve Locator',Updated=TO_DATE('2012-10-19 14:09:08'
|
||||||
UPDATE AD_Field_Trl SET IsTranslated='N' WHERE AD_Field_ID=200649
|
UPDATE AD_Field_Trl SET IsTranslated='N' WHERE AD_Field_ID=200649
|
||||||
;
|
;
|
||||||
|
|
||||||
|
SELECT register_migration_script('201211141734_IDEMPIERE-385_reserveLocator.sql') FROM dual
|
||||||
|
;
|
||||||
|
|
||||||
|
|
|
@ -374,3 +374,6 @@ INSERT INTO AD_Column_Trl (AD_Language,AD_Column_ID, Name, IsTranslated,AD_Clien
|
||||||
CREATE TABLE M_StorageReservation (AD_Client_ID NUMERIC(10) NOT NULL, AD_Org_ID NUMERIC(10) NOT NULL, Created TIMESTAMP NOT NULL, CreatedBy NUMERIC(10) NOT NULL, DateLastInventory TIMESTAMP DEFAULT NULL , IsActive CHAR(1) DEFAULT 'Y' CHECK (IsActive IN ('Y','N')) NOT NULL, IsSOTrx CHAR(1) DEFAULT 'Y' CHECK (IsSOTrx IN ('Y','N')), M_AttributeSetInstance_ID NUMERIC(10) NOT NULL, M_Product_ID NUMERIC(10) NOT NULL, M_Warehouse_ID NUMERIC(10) NOT NULL, Qty NUMERIC NOT NULL, Updated TIMESTAMP NOT NULL, UpdatedBy NUMERIC(10) NOT NULL, CONSTRAINT M_StorageReservation_Key PRIMARY KEY (M_AttributeSetInstance_ID, M_Product_ID, M_Warehouse_ID))
|
CREATE TABLE M_StorageReservation (AD_Client_ID NUMERIC(10) NOT NULL, AD_Org_ID NUMERIC(10) NOT NULL, Created TIMESTAMP NOT NULL, CreatedBy NUMERIC(10) NOT NULL, DateLastInventory TIMESTAMP DEFAULT NULL , IsActive CHAR(1) DEFAULT 'Y' CHECK (IsActive IN ('Y','N')) NOT NULL, IsSOTrx CHAR(1) DEFAULT 'Y' CHECK (IsSOTrx IN ('Y','N')), M_AttributeSetInstance_ID NUMERIC(10) NOT NULL, M_Product_ID NUMERIC(10) NOT NULL, M_Warehouse_ID NUMERIC(10) NOT NULL, Qty NUMERIC NOT NULL, Updated TIMESTAMP NOT NULL, UpdatedBy NUMERIC(10) NOT NULL, CONSTRAINT M_StorageReservation_Key PRIMARY KEY (M_AttributeSetInstance_ID, M_Product_ID, M_Warehouse_ID))
|
||||||
;
|
;
|
||||||
|
|
||||||
|
SELECT register_migration_script('201211141732_IDEMPIERE-385_m_storage.sql') FROM dual
|
||||||
|
;
|
||||||
|
|
||||||
|
|
|
@ -29,3 +29,7 @@ UNION
|
||||||
JOIN ad_org org ON org.ad_org_id = mw.ad_org_id
|
JOIN ad_org org ON org.ad_org_id = mw.ad_org_id
|
||||||
LEFT JOIN m_storagereservation mr ON ms.m_product_id = mr.m_product_id AND mw.m_warehouse_id = mr.m_warehouse_id AND mr.isSOTrx='Y'
|
LEFT JOIN m_storagereservation mr ON ms.m_product_id = mr.m_product_id AND mw.m_warehouse_id = mr.m_warehouse_id AND mr.isSOTrx='Y'
|
||||||
GROUP BY r.ad_client_id, r.ad_org_id, r.isactive, r.created, r.createdby, r.updated, r.updatedby, r.m_product_id, r.relatedproduct_id, mw.m_warehouse_id, mpr.m_pricelist_version_id, org.name, mp.name;
|
GROUP BY r.ad_client_id, r.ad_org_id, r.isactive, r.created, r.createdby, r.updated, r.updatedby, r.m_product_id, r.relatedproduct_id, mw.m_warehouse_id, mpr.m_pricelist_version_id, org.name, mp.name;
|
||||||
|
|
||||||
|
SELECT register_migration_script('201211141733_IDEMPIERE-385_m_viewProduct.sql') FROM dual
|
||||||
|
;
|
||||||
|
|
||||||
|
|
|
@ -43,3 +43,6 @@ UPDATE AD_Field SET Name='Reserve Locator',Updated=TO_TIMESTAMP('2012-10-19 14:0
|
||||||
UPDATE AD_Field_Trl SET IsTranslated='N' WHERE AD_Field_ID=200649
|
UPDATE AD_Field_Trl SET IsTranslated='N' WHERE AD_Field_ID=200649
|
||||||
;
|
;
|
||||||
|
|
||||||
|
SELECT register_migration_script('201211141734_IDEMPIERE-385_reserveLocator.sql') FROM dual
|
||||||
|
;
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue