This commit is contained in:
@@ -11,26 +11,32 @@ namespace AyaNova.DataList
|
||||
{
|
||||
DefaultListAType = AyaType.PartInventory;
|
||||
|
||||
SQLFrom = "from vpartinventorylist "
|
||||
+ "LEFT JOIN apart ON (vpartinventorylist.partid = apart.id) "
|
||||
+ "LEFT JOIN apartwarehouse ON (vpartinventorylist.partwarehouseid = apartwarehouse.id) ";
|
||||
SQLFrom = "from vpartinventorylist ";
|
||||
/*
|
||||
"CREATE VIEW vpartinventorylist AS select apart.partnumber,apartwarehouse.name as whsname,vpartinventorynow.*,vpartsonorder.quantityonorder,"
|
||||
+"vpartsonordercommitted.quantityonordercommitted,apart.name as prtname, apart.active, apart.cost, apartstocklevel.minimumquantity,apart.retail, aws.name AS whslrname, aaws.name AS altwhslrname, "
|
||||
+"GREATEST( COALESCE(apartstocklevel.minimumquantity, 0) - (COALESCE(vpartinventorynow.balance, 0) + COALESCE(vpartsonorder.quantityonorder, 0) - "
|
||||
+"COALESCE(vpartsonordercommitted.quantityonordercommitted, 0)) ,0) AS reorderquantity FROM vpartinventorynow LEFT JOIN vpartsonordercommitted ON "
|
||||
+"vpartinventorynow.partid = vpartsonordercommitted.partid AND vpartinventorynow.partwarehouseid = vpartsonordercommitted.partwarehouseid "
|
||||
+"LEFT JOIN vpartsonorder ON vpartinventorynow.partid = vpartsonorder.partid AND vpartinventorynow.partwarehouseid = vpartsonorder.partwarehouseid "
|
||||
+"LEFT JOIN apart ON (vpartinventorynow.partid = apart.id) LEFT JOIN apartwarehouse ON (vpartinventorynow.partwarehouseid = apartwarehouse.id) "
|
||||
+"left join avendor AS aws on (apart.wholesalerid = aws.id) left join avendor AS aaws on (apart.alternativewholesalerid = aaws.id) "
|
||||
+"left join apartstocklevel on (apartstocklevel.partid = apart.id AND apartstocklevel.partwarehouseid = vpartinventorynow.partwarehouseid);"
|
||||
|
||||
//TODO: make this a view and *it* should be named vpartinventorylist ideally
|
||||
//so either incorporate or rename the existing vpartinventorylist to fit in here
|
||||
|
||||
// select apart.partnumber,apartwarehouse.name,vpartinventorylist.balance,vpartinventorylist.quantityonorder,vpartinventorylist.quantityonordercommitted,apart.name,
|
||||
// apart.active, apart.cost, apartstocklevel.minimumquantity,apart.retail, aws.name, aaws.name,
|
||||
// GREATEST(
|
||||
// COALESCE(apartstocklevel.minimumquantity, 0) -
|
||||
// (COALESCE(vpartinventorylist.balance, 0) + COALESCE(vpartinventorylist.quantityonorder, 0) - COALESCE(vpartinventorylist.quantityonordercommitted, 0))
|
||||
// ,0)
|
||||
// AS reorderquantity
|
||||
// from vpartinventorylist
|
||||
// LEFT JOIN apart ON (vpartinventorylist.partid = apart.id)
|
||||
// LEFT JOIN apartwarehouse ON (vpartinventorylist.partwarehouseid = apartwarehouse.id)
|
||||
// left join avendor AS aws on (apart.wholesalerid = aws.id)
|
||||
// left join avendor AS aaws on (apart.alternativewholesalerid = aaws.id)
|
||||
// left join apartstocklevel on (apartstocklevel.partid = apart.id AND apartstocklevel.partwarehouseid = vpartinventorylist.partwarehouseid)
|
||||
|
||||
|
||||
await ExecQueryAsync("CREATE VIEW vpartinventorylist AS select vpartinventorynow.*, vpartsonordercommitted.quantityonordercommitted, vpartsonorder.quantityonorder from vpartinventorynow "
|
||||
+ "left join vpartsonordercommitted on (vpartinventorynow.partid = vpartsonordercommitted.partid and vpartinventorynow.partwarehouseid = vpartsonordercommitted.partwarehouseid)"
|
||||
+ "left join vpartsonorder on (vpartinventorynow.partid = vpartsonorder.partid and vpartinventorynow.partwarehouseid = vpartsonorder.partwarehouseid)");
|
||||
|
||||
*/
|
||||
|
||||
//NEEDED COLUMNS
|
||||
/*
|
||||
partid, partnumber, partname, partactive, partcost, partretail, partwarehouseid, partwarehousename,wholesalername,wholesalerid,altwholesalername,altwholesalerid,
|
||||
onhandqty, onorderqty, onordercommittedqty, restocklevel/minimumqty, reorderqty, vpartinventorynow.description, vpartinventorynow.id
|
||||
*/
|
||||
|
||||
var RoleSet = BizRoles.GetRoleSet(DefaultListAType);
|
||||
AllowedRoles = RoleSet.ReadFullRecord | RoleSet.Change;
|
||||
@@ -55,7 +61,7 @@ namespace AyaNova.DataList
|
||||
AType = (int)AyaType.Part,
|
||||
UiFieldDataType = (int)UiFieldDataType.Text,
|
||||
SqlIdColumnName = "apart.id",
|
||||
SqlValueColumnName = "apart.name"
|
||||
SqlValueColumnName = "vpartinventorylist.vpartinventorylist"
|
||||
});
|
||||
|
||||
FieldDefinitions.Add(new DataListFieldDefinition
|
||||
@@ -74,8 +80,8 @@ namespace AyaNova.DataList
|
||||
FieldKey = "PartInventoryTransactionDescription",
|
||||
AType = (int)AyaType.PartInventory,
|
||||
UiFieldDataType = (int)UiFieldDataType.Text,
|
||||
SqlIdColumnName = "vpartinventorylist.id",
|
||||
SqlValueColumnName = "vpartinventorylist.description",
|
||||
SqlIdColumnName = "vpartinventorylist.id",//NEW: vpartinventorynow.id is actually apartinventory.id required for reporting purposes
|
||||
SqlValueColumnName = "vpartinventorylist.description",//NEW: vpartinventorynow.description which is actually apartinventory.description
|
||||
IsMeta = true,//only so it doesn't show in the UI but is required for report
|
||||
IsRowId = true
|
||||
});
|
||||
|
||||
@@ -22,7 +22,7 @@ namespace AyaNova.Util
|
||||
//!!!!WARNING: BE SURE TO UPDATE THE DbUtil::EmptyBizDataFromDatabaseForSeedingOrImportingAsync WHEN NEW TABLES ADDED!!!!
|
||||
private const int DESIRED_SCHEMA_LEVEL = 1;
|
||||
|
||||
internal const long EXPECTED_COLUMN_COUNT = 1236;
|
||||
internal const long EXPECTED_COLUMN_COUNT = 1231;
|
||||
internal const long EXPECTED_INDEX_COUNT = 146;
|
||||
internal const long EXPECTED_CHECK_CONSTRAINTS = 517;
|
||||
internal const long EXPECTED_FOREIGN_KEY_CONSTRAINTS = 191;
|
||||
@@ -31,7 +31,7 @@ namespace AyaNova.Util
|
||||
|
||||
//!!!!WARNING: BE SURE TO UPDATE THE DbUtil::EmptyBizDataFromDatabaseForSeedingOrImportingAsync WHEN NEW TABLES ADDED!!!!
|
||||
|
||||
/////////////////////////////////////////////////////////////////
|
||||
///////////////////////////////////////////////////////////////// C1231:I146:CC517:FC191:V7:R2
|
||||
|
||||
|
||||
|
||||
@@ -901,38 +901,23 @@ $BODY$ LANGUAGE PLPGSQL STABLE");
|
||||
// + "left join vpartsonordercommitted on (vpartinventorynow.partid = vpartsonordercommitted.partid and vpartinventorynow.partwarehouseid = vpartsonordercommitted.partwarehouseid)"
|
||||
// + "left join vpartsonorder on (vpartinventorynow.partid = vpartsonorder.partid and vpartinventorynow.partwarehouseid = vpartsonorder.partwarehouseid)");
|
||||
|
||||
|
||||
|
||||
await ExecQueryAsync("CREATE VIEW vpartinventorylist AS select apart.partnumber,apartwarehouse.name as whsname,vpartinventorynow.*,vpartsonorder.quantityonorder,"
|
||||
+"vpartsonordercommitted.quantityonordercommitted,apart.name as prtname, apart.active, apart.cost, apartstocklevel.minimumquantity,apart.retail, aws.name AS whslrname, aaws.name AS altwhslrname, "
|
||||
+"GREATEST( COALESCE(apartstocklevel.minimumquantity, 0) - (COALESCE(vpartinventorynow.balance, 0) + COALESCE(vpartsonorder.quantityonorder, 0) - "
|
||||
+"COALESCE(vpartsonordercommitted.quantityonordercommitted, 0)) ,0) AS reorderquantity FROM vpartinventorynow LEFT JOIN vpartsonordercommitted ON "
|
||||
await ExecQueryAsync(
|
||||
"CREATE VIEW vpartinventorylist AS select apart.id as partid, apart.partnumber, apart.name as partname, apart.active as partactive, apart.cost as partcost, apart.retail as partretail,"
|
||||
+"apartwarehouse.id as partwarehouseid, apartwarehouse.name as partwarehousename, awholesaler.name as wholesalername, awholesaler.id as wholesalerid, "
|
||||
+"aaltwholesaler.id as altwholesalerid, aaltwholesaler.name as altwholesalername, vpartinventorynow.balance as onhandqty,vpartsonorder.quantityonorder as onorderqty, "
|
||||
+"vpartsonordercommitted.quantityonordercommitted as onordercommittedqty,apartstocklevel.minimumquantity as restockminqty, "
|
||||
+"GREATEST( COALESCE(apartstocklevel.minimumquantity, 0) - (COALESCE(vpartinventorynow.balance, 0) + COALESCE(vpartsonorder.quantityonorder, 0) - COALESCE(vpartsonordercommitted.quantityonordercommitted, 0)) ,0) AS reorderqty,"
|
||||
+"vpartinventorynow.id as partinventoryid, vpartinventorynow.description as partinventorydescription "
|
||||
+"FROM vpartinventorynow LEFT JOIN vpartsonordercommitted ON "
|
||||
+"vpartinventorynow.partid = vpartsonordercommitted.partid AND vpartinventorynow.partwarehouseid = vpartsonordercommitted.partwarehouseid "
|
||||
+"LEFT JOIN vpartsonorder ON vpartinventorynow.partid = vpartsonorder.partid AND vpartinventorynow.partwarehouseid = vpartsonorder.partwarehouseid "
|
||||
+"LEFT JOIN apart ON (vpartinventorynow.partid = apart.id) LEFT JOIN apartwarehouse ON (vpartinventorynow.partwarehouseid = apartwarehouse.id) "
|
||||
+"left join avendor AS aws on (apart.wholesalerid = aws.id) left join avendor AS aaws on (apart.alternativewholesalerid = aaws.id) "
|
||||
+"left join avendor AS awholesaler on (apart.wholesalerid = awholesaler.id) left join avendor AS aaltwholesaler on (apart.alternativewholesalerid = aaltwholesaler.id) "
|
||||
+"left join apartstocklevel on (apartstocklevel.partid = apart.id AND apartstocklevel.partwarehouseid = vpartinventorynow.partwarehouseid);");
|
||||
|
||||
|
||||
//TODO: make this a view and *it* should be named vpartinventorylist ideally
|
||||
//so either incorporate or rename the existing vpartinventorylist to fit in here
|
||||
//existing vpartinventorylist only used by partinventorydatalist so... :)
|
||||
|
||||
|
||||
// select apart.partnumber,apartwarehouse.name,vpartinventorylist.balance,vpartinventorylist.quantityonorder,vpartinventorylist.quantityonordercommitted,apart.name,
|
||||
// apart.active, apart.cost, apartstocklevel.minimumquantity,apart.retail, aws.name, aaws.name,
|
||||
// GREATEST(
|
||||
// COALESCE(apartstocklevel.minimumquantity, 0) -
|
||||
// (COALESCE(vpartinventorylist.balance, 0) + COALESCE(vpartinventorylist.quantityonorder, 0) - COALESCE(vpartinventorylist.quantityonordercommitted, 0))
|
||||
// ,0)
|
||||
// AS reorderquantity
|
||||
// from vpartinventorylist
|
||||
// LEFT JOIN apart ON (vpartinventorylist.partid = apart.id)
|
||||
// LEFT JOIN apartwarehouse ON (vpartinventorylist.partwarehouseid = apartwarehouse.id)
|
||||
// left join avendor AS aws on (apart.wholesalerid = aws.id)
|
||||
// left join avendor AS aaws on (apart.alternativewholesalerid = aaws.id)
|
||||
// left join apartstocklevel on (apartstocklevel.partid = apart.id AND apartstocklevel.partwarehouseid = vpartinventorylist.partwarehouseid)
|
||||
|
||||
/*
|
||||
partid, partnumber, partname, partactive, partcost, partretail, partwarehouseid, partwarehousename,wholesalername,wholesalerid,altwholesalername,altwholesalerid,
|
||||
onhandqty, onorderqty, onordercommittedqty, restocklevel/minimumqty, reorderqty, vpartinventorynow.description, vpartinventorynow.id
|
||||
*/
|
||||
//----------
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user