diff --git a/server/AyaNova/util/AySchema.cs b/server/AyaNova/util/AySchema.cs index 2d8607de..efe24f7e 100644 --- a/server/AyaNova/util/AySchema.cs +++ b/server/AyaNova/util/AySchema.cs @@ -747,17 +747,21 @@ $BODY$ LANGUAGE PLPGSQL STABLE"); + "receiveddate TIMESTAMP, partrequestedbyid BIGINT REFERENCES auser, purchasetaxcodeid BIGINT REFERENCES ataxcode, vendorpartnumber TEXT, serials TEXT " + ")"); - //RESTOCK REQUIRED + //VPARTSONORDER await ExecQueryAsync("CREATE VIEW vpartsonorder AS SELECT partid, partwarehouseid, SUM((COALESCE(apurchaseorderitem.quantityordered,0)-COALESCE(apurchaseorderitem.quantityreceived,0))) AS quantityonorder " + "FROM apurchaseorderitem WHERE (COALESCE(apurchaseorderitem.quantityordered,0)-COALESCE(apurchaseorderitem.quantityreceived,0)) > 0 GROUP BY partid, partwarehouseid"); //VRESTOCKREQUIRED await ExecQueryAsync("CREATE VIEW vrestockrequired AS SELECT apart.id AS partid, apartwarehouse.id AS partwarehouseid, apart.partnumber, apartwarehouse.name AS displaywarehouse, " + + "amanufacturer.id AS manufactureid, amanufacturer.name AS displaymanufacturer, awholesaler.id AS wholesalerid, awholesaler.name AS displaywholesaler, " + + "aalternativewholesaler.id AS ayalternativewholesalerid, aalternativewholesaler.name AS displayalternativewholesaler," + "apartstocklevel.minimumquantity, vpartinventorynow.balance, COALESCE(vpartsonorder.quantityonorder,0) AS onorderquantity, " + "apartstocklevel.minimumquantity - (COALESCE(vpartinventorynow.balance, 0) + COALESCE(vpartsonorder.quantityonorder, 0)) AS requiredquantity " + "FROM vpartinventorynow " + "LEFT JOIN apart ON vpartinventorynow.partid=apart.id LEFT JOIN apartwarehouse ON vpartinventorynow.partwarehouseid = apartwarehouse.id " + + "LEFT JOIN avendor AS amanufacturer ON (apart.manufacturerid = amanufacturer.id) left join avendor AS awholesaler ON (apart.wholesalerid = awholesaler.id)" + + "LEFT JOIN avendor AS aalternativewholesaler ON (apart.alternativewholesalerid = aalternativewholesaler.id)" + "LEFT JOIN apartstocklevel ON vpartinventorynow.partid=apartstocklevel.partid AND vpartinventorynow.partwarehouseid=apartstocklevel.partwarehouseid " + "LEFT JOIN vpartsonorder ON vpartinventorynow.partid=vpartsonorder.partid AND vpartinventorynow.partwarehouseid=vpartsonorder.partwarehouseid " + "WHERE apartstocklevel.minimumquantity IS NOT NULL AND (apartstocklevel.minimumquantity - (COALESCE(vpartinventorynow.balance, 0) + COALESCE(vpartsonorder.quantityonorder, 0))) >0 "