case 3740 - whups
This commit is contained in:
@@ -909,6 +909,7 @@ namespace GZTW.AyaNova.BLL
|
|||||||
AyaBizUtils._SchemaUpdating = true;
|
AyaBizUtils._SchemaUpdating = true;
|
||||||
DBUtil.DB.ClearPool();
|
DBUtil.DB.ClearPool();
|
||||||
int nSchemaLevelAtStart = int.MaxValue;
|
int nSchemaLevelAtStart = int.MaxValue;
|
||||||
|
|
||||||
//There is nothing that can be done in here to handle errors other than to report them
|
//There is nothing that can be done in here to handle errors other than to report them
|
||||||
//If this fails a restore from database is the only option
|
//If this fails a restore from database is the only option
|
||||||
using (_cn = DBUtil.DB.GetConnection())
|
using (_cn = DBUtil.DB.GetConnection())
|
||||||
@@ -2623,6 +2624,18 @@ No message for error code 336397208 found.
|
|||||||
#region Firebird Version 136 Case 3740
|
#region Firebird Version 136 Case 3740
|
||||||
if (nSchemaLevel < 136)
|
if (nSchemaLevel < 136)
|
||||||
{
|
{
|
||||||
|
//-- Delete 'closed none received' orphan poitems
|
||||||
|
DDL(@"DELETE FROM APURCHASEORDERITEM POI WHERE EXISTS (SELECT AID FROM APURCHASEORDER PO WHERE PO.AID=POI.APURCHASEORDERID AND PO.ASTATUS=6);");
|
||||||
|
|
||||||
|
//-- Fix 'Closed - partially received' po items with mismatching quantities
|
||||||
|
DDL(
|
||||||
|
@"MERGE INTO APURCHASEORDERITEM AS POI
|
||||||
|
USING APURCHASEORDER AS PO
|
||||||
|
ON PO.AID=POI.APURCHASEORDERID AND PO.ASTATUS=4
|
||||||
|
WHEN MATCHED THEN
|
||||||
|
UPDATE SET POI.AQUANTITYORDERED=POI.AQUANTITYRECEIVED, POI.ACLOSED=1;
|
||||||
|
");
|
||||||
|
|
||||||
//-- Reset all ON ORDER to zero
|
//-- Reset all ON ORDER to zero
|
||||||
DDL(@"update APARTBYWAREHOUSEINVENTORY set AQUANTITYONORDER=0;");
|
DDL(@"update APARTBYWAREHOUSEINVENTORY set AQUANTITYONORDER=0;");
|
||||||
|
|
||||||
@@ -2647,18 +2660,7 @@ WHEN MATCHED THEN
|
|||||||
UPDATE SET B.AQTYONORDERCOMMITTED=A.AQUANTITYORDERED-A.AQUANTITYRECEIVED
|
UPDATE SET B.AQTYONORDERCOMMITTED=A.AQUANTITYORDERED-A.AQUANTITYRECEIVED
|
||||||
");
|
");
|
||||||
|
|
||||||
//-- Delete 'closed none received' orphan poitems
|
|
||||||
DDL(@"DELETE FROM APURCHASEORDERITEM POI WHERE EXISTS (SELECT AID FROM APURCHASEORDER PO WHERE PO.AID=POI.APURCHASEORDERID AND PO.ASTATUS=4);");
|
|
||||||
|
|
||||||
//-- Fix 'Closed - partially received' po items with mismatching quantities
|
|
||||||
DDL(
|
|
||||||
@"MERGE INTO APURCHASEORDERITEM AS POI
|
|
||||||
USING APURCHASEORDER AS PO
|
|
||||||
ON PO.AID=POI.APURCHASEORDERID AND PO.ASTATUS=4
|
|
||||||
WHEN MATCHED THEN
|
|
||||||
UPDATE SET POI.AQUANTITYORDERED=POI.AQUANTITYRECEIVED, POI.ACLOSED=1;
|
|
||||||
");
|
|
||||||
|
|
||||||
nSchemaLevel = 136;
|
nSchemaLevel = 136;
|
||||||
}
|
}
|
||||||
#endregion
|
#endregion
|
||||||
@@ -4496,7 +4498,18 @@ UPDATE SET POI.AQUANTITYORDERED=POI.AQUANTITYRECEIVED, POI.ACLOSED=1;
|
|||||||
if (nSchemaLevel < 136)
|
if (nSchemaLevel < 136)
|
||||||
{
|
{
|
||||||
|
|
||||||
DDL(@"-- **** FIX INVENTORY ON ORDER ****
|
DDL(
|
||||||
|
@"-- Delete 'closed none received' orphan poitems
|
||||||
|
delete APURCHASEORDERITEM from APURCHASEORDERITEM
|
||||||
|
left outer join APURCHASEORDER on APURCHASEORDERITEM.APURCHASEORDERID = APURCHASEORDER.AID
|
||||||
|
where APURCHASEORDER.ASTATUS=6;
|
||||||
|
|
||||||
|
-- Fix 'Closed - partially received' po items with mismatching quantities
|
||||||
|
update APURCHASEORDERITEM set AQUANTITYORDERED=AQUANTITYRECEIVED, ACLOSED=1 from APURCHASEORDERITEM
|
||||||
|
left outer join APURCHASEORDER on APURCHASEORDERITEM.APURCHASEORDERID = APURCHASEORDER.AID
|
||||||
|
where APURCHASEORDER.ASTATUS=4;
|
||||||
|
|
||||||
|
-- **** FIX INVENTORY ON ORDER ****
|
||||||
-- Reset all ON ORDER to zero
|
-- Reset all ON ORDER to zero
|
||||||
update APARTBYWAREHOUSEINVENTORY set AQUANTITYONORDER=0;
|
update APARTBYWAREHOUSEINVENTORY set AQUANTITYONORDER=0;
|
||||||
-- Update on order to actual values in PO Items
|
-- Update on order to actual values in PO Items
|
||||||
@@ -4523,17 +4536,7 @@ where APURCHASEORDERITEM.ACLOSED=0 and APURCHASEORDERITEM.AWORKORDERITEMPARTREQU
|
|||||||
) as zACTUAL
|
) as zACTUAL
|
||||||
where
|
where
|
||||||
zACTUAL.APARTWAREHOUSEID= APARTBYWAREHOUSEINVENTORY.APARTWAREHOUSEID and
|
zACTUAL.APARTWAREHOUSEID= APARTBYWAREHOUSEINVENTORY.APARTWAREHOUSEID and
|
||||||
zACTUAL.APARTID=APARTBYWAREHOUSEINVENTORY.APARTID;
|
zACTUAL.APARTID=APARTBYWAREHOUSEINVENTORY.APARTID;");
|
||||||
|
|
||||||
-- Delete 'closed none received' orphan poitems
|
|
||||||
delete APURCHASEORDERITEM from APURCHASEORDERITEM
|
|
||||||
left outer join APURCHASEORDER on APURCHASEORDERITEM.APURCHASEORDERID = APURCHASEORDER.AID
|
|
||||||
where APURCHASEORDER.ASTATUS=6;
|
|
||||||
|
|
||||||
-- Fix 'Closed - partially received' po items with mismatching quantities
|
|
||||||
update APURCHASEORDERITEM set AQUANTITYORDERED=AQUANTITYRECEIVED, ACLOSED=1 from APURCHASEORDERITEM
|
|
||||||
left outer join APURCHASEORDER on APURCHASEORDERITEM.APURCHASEORDERID = APURCHASEORDER.AID
|
|
||||||
where APURCHASEORDER.ASTATUS=4;");
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user