Merge pull request #1664 from garyhgohoos/24144
authorGil Moskowitz <gmoskowitz@xtuple.com>
Fri, 18 Jul 2014 19:02:13 +0000 (15:02 -0400)
committerGil Moskowitz <gmoskowitz@xtuple.com>
Fri, 18 Jul 2014 19:02:13 +0000 (15:02 -0400)
Issue #24144:call postItemlocSeries which posts G/L

17 files changed:
RELEASE.md
enyo-client/database/orm/models/url.json
enyo-client/database/source/xm/javascript/item_site.sql
foundation-database/manifest.js
foundation-database/postbooks_demo_data.sql
foundation-database/public/functions/itemcost.sql
foundation-database/public/functions/itemipsprice.sql
foundation-database/public/patches/fixflcol.sql [new file with mode: 0644]
foundation-database/public/tables/metasql/itemPricingSchedule-detail.mql
foundation-database/public/tables/metasql/pricelist-detail.mql
foundation-database/public/tables/metasql/salesOrderItems-list.mql
scripts/lib/build_database.js
scripts/xml/distribution_install.xml
scripts/xml/distribution_package.xml
scripts/xml/postbooks_package.xml
scripts/xml/xtmfg_install.xml
scripts/xml/xtmfg_package.xml

index 1883810..be4f8fc 100644 (file)
@@ -1,3 +1,22 @@
+4.5.2 (2014/07/15)
+==================
+
+Features and bugfixes
+---------------------
+- Fixed
+  issue #[23636](http://www.xtuple.org/xtincident/view/bugs/23636) 
+  _Error when running Inventory Availability_ 
+- Fixed 
+  issue #[23714](http://www.xtuple.org/xtincident/view/bugs/23714) 
+  _*Quantity 'At Shipping' gets doubled on selecting 'Issue All' or 'Issue Line' multiple times_ 
+- Fixed 
+  issue #[23979](http://www.xtuple.org/xtincident/view/bugs/23979) 
+  _*Unable to build Mobile Web client on empty databases_ 
+- Fixed 
+  issue #[24098](http://www.xtuple.org/xtincident/view/bugs/24098) 
+  _Icons only displaying when debugging = true_ 
+
+
 4.5.1 (2014/06/25)
 ==================
 
index ce6663a..414c809 100644 (file)
@@ -5,6 +5,7 @@
     "type": "Url",
     "table": "urlinfo",
     "isRest": true,
+    "lockable": true,
     "idSequenceName": "urlinfo_url_id_seq",
     "comment": "URL Map",
     "privileges": {
index dc75253..218222b 100644 (file)
@@ -32,8 +32,8 @@ select xt.install_js('XM','ItemSite','xtuple', $$
     @private
 
     This function supports the XM.ItemSiteListItem.fetch() and XM.ItemSiteRelation.fetch(),
-    but also xDruple extension XM.XdrupleCommerceProduct.xdCommerceProductFetch() call like this:
-    XM.ItemSitePrivate.fetch("XM.XdrupleCommerceProduct", "xdruple.xd_commerce_product", query, 'product_id', 'id');
+    but also xDruple extension XM.XdProduct.xdProductFetch() call like this:
+    XM.ItemSitePrivate.fetch("XM.XdProduct", "xdruple.xd_commerce_product", query, 'product_id', 'id');
   */
   XM.ItemSitePrivate.fetch = function (recordType, backingType, query, backingTypeJoinColumn, idColumn) {
     query = query || {};
index b4ef264..678feb8 100644 (file)
@@ -12,6 +12,8 @@
     "../lib/orm/source/xt/functions/add_primary_key.sql",
     "../lib/orm/source/xt/functions/create_table.sql",
 
+    "public/patches/fixflcol.sql",
+
     "public/indexes/apopentax.sql",
     "public/indexes/aropentax.sql",
     "public/indexes/asohisttax.sql",
index 6d46fa5..78a7ba9 100644 (file)
@@ -64001,23 +64001,6 @@ ALTER TABLE payaropen ENABLE TRIGGER ALL;
 -- Data for Name: payco; Type: TABLE DATA; Schema: public; Owner: admin
 --
 
-ALTER TABLE payco DISABLE TRIGGER ALL;
-
-INSERT INTO payco (payco_ccpay_id, payco_cohead_id, payco_amount, payco_curr_id) VALUES (16, 2964, 0.00, 1);
-INSERT INTO payco (payco_ccpay_id, payco_cohead_id, payco_amount, payco_curr_id) VALUES (17, 2964, 104.90, 1);
-INSERT INTO payco (payco_ccpay_id, payco_cohead_id, payco_amount, payco_curr_id) VALUES (18, 2964, 0.00, 1);
-INSERT INTO payco (payco_ccpay_id, payco_cohead_id, payco_amount, payco_curr_id) VALUES (22, 2973, 0.00, 1);
-INSERT INTO payco (payco_ccpay_id, payco_cohead_id, payco_amount, payco_curr_id) VALUES (23, 2973, 104.90, 1);
-INSERT INTO payco (payco_ccpay_id, payco_cohead_id, payco_amount, payco_curr_id) VALUES (25, 3002, 0.00, 1);
-INSERT INTO payco (payco_ccpay_id, payco_cohead_id, payco_amount, payco_curr_id) VALUES (26, 3002, 0.00, 1);
-INSERT INTO payco (payco_ccpay_id, payco_cohead_id, payco_amount, payco_curr_id) VALUES (27, 3002, 0.00, 1);
-INSERT INTO payco (payco_ccpay_id, payco_cohead_id, payco_amount, payco_curr_id) VALUES (28, 3002, 997.50, 1);
-INSERT INTO payco (payco_ccpay_id, payco_cohead_id, payco_amount, payco_curr_id) VALUES (29, 3005, 103.86, 1);
-INSERT INTO payco (payco_ccpay_id, payco_cohead_id, payco_amount, payco_curr_id) VALUES (35, 3023, 0.00, 1);
-
-
-ALTER TABLE payco ENABLE TRIGGER ALL;
-
 --
 -- TOC entry 9639 (class 0 OID 0)
 -- Dependencies: 710
index 03cef38..ab7931a 100644 (file)
@@ -18,7 +18,7 @@ DECLARE
   _cost NUMERIC := 0.0;
 BEGIN
   -- cache item info
-  SELECT * INTO _r
+  SELECT *, itemInvPriceRat(item_id) AS itempriceinvrat INTO _r
   FROM itemsite, item
   WHERE (itemsite_item_id=pItemid)
     AND (itemsite_warehous_id=pSiteid)
@@ -33,7 +33,7 @@ BEGIN
       AND (bomitem_rev_id=getActiveRevid('BOM', _r.item_id))
       AND (pEffective BETWEEN bomitem_effective AND (bomitem_expires - 1));
   ELSEIF (fetchMetricBool('WholesalePriceCosting')) THEN
-    _cost := _r.item_listcost;
+    _cost := _r.item_listcost / _r.itempriceinvrat;
   ELSE
     SELECT itemcost(_r.itemsite_id) INTO _cost;
   END IF;
index f7ef3bc..93bfe05 100644 (file)
@@ -18,7 +18,7 @@ DECLARE
   _item RECORD;
   _cust RECORD;
   _shipto RECORD;
-  _iteminvpricerat NUMERIC := 1.0;
+  _itempricepricerat NUMERIC := 1.0;
   _listprice NUMERIC := 0.0;
   _qty NUMERIC;
   _asof DATE;
@@ -38,7 +38,7 @@ BEGIN
   _asof := COALESCE(pAsOf, CURRENT_DATE);
 
 --  Cache Item, Customer and Shipto
-  SELECT item.*, itemCost(itemsite_id) AS invcost INTO _item
+  SELECT item.*, (itemCost(itemsite_id) / itemuomtouomratio(item_id, item_inv_uom_id, item_price_uom_id)) AS invcost INTO _item
   FROM item LEFT OUTER JOIN itemsite ON (itemsite_item_id=item_id AND itemsite_warehous_id=pSiteid)
   WHERE (item_id=pItemid);
 
@@ -52,7 +52,7 @@ BEGIN
 
 -- Get a value here so we do not have to call the function several times
   SELECT itemuomtouomratio(pItemid, pPriceUOM, _item.item_price_uom_id) AS ratio
-    INTO _iteminvpricerat;
+    INTO _itempricepricerat;
 
 -- First get a sales price if any so we when we find other prices
 -- we can determine if we want that price or this price.
@@ -64,15 +64,15 @@ BEGIN
          CASE WHEN (ipsitem_type = 'N') THEN
                (ipsitem_price * itemuomtouomratio(_item.item_id, pPriceUOM, ipsitem_price_uom_id))
               WHEN (ipsitem_type = 'D') THEN
-               noNeg(_item.item_listprice - (_item.item_listprice * ipsitem_discntprcnt) - ipsitem_fixedamtdiscount) * _iteminvpricerat
+               noNeg(_item.item_listprice - (_item.item_listprice * ipsitem_discntprcnt) - ipsitem_fixedamtdiscount) * _itempricepricerat
               WHEN ((ipsitem_type = 'M') AND _long30markups AND _wholesalepricecosting) THEN
-               (_item.item_listcost / (1.0 - ipsitem_discntprcnt) + ipsitem_fixedamtdiscount) * _iteminvpricerat
+               (_item.item_listcost / (1.0 - ipsitem_discntprcnt) + ipsitem_fixedamtdiscount) * _itempricepricerat
               WHEN ((ipsitem_type = 'M') AND _long30markups) THEN
-               (_item.invcost / (1.0 - ipsitem_discntprcnt) + ipsitem_fixedamtdiscount) * _iteminvpricerat
+               (_item.invcost / (1.0 - ipsitem_discntprcnt) + ipsitem_fixedamtdiscount) * _itempricepricerat
               WHEN (ipsitem_type = 'M' AND _wholesalepricecosting) THEN
-               (_item.item_listcost + (_item.item_listcost * ipsitem_discntprcnt) + ipsitem_fixedamtdiscount) * _iteminvpricerat
+               (_item.item_listcost + (_item.item_listcost * ipsitem_discntprcnt) + ipsitem_fixedamtdiscount) * _itempricepricerat
               WHEN (ipsitem_type = 'M') THEN
-               (_item.invcost + (_item.invcost * ipsitem_discntprcnt) + ipsitem_fixedamtdiscount) * _iteminvpricerat
+               (_item.invcost + (_item.invcost * ipsitem_discntprcnt) + ipsitem_fixedamtdiscount) * _itempricepricerat
               ELSE 0.00
          END AS ipsprice_price,
          CASE WHEN (ipsitem_item_id=_item.item_id) THEN itemuomtouom(ipsitem_item_id, ipsitem_qty_uom_id, NULL, ipsitem_qtybreak)
@@ -115,15 +115,15 @@ BEGIN
            CASE WHEN (ipsitem_type = 'N') THEN
                  (ipsitem_price * itemuomtouomratio(_item.item_id, pPriceUOM, ipsitem_price_uom_id))
                 WHEN (ipsitem_type = 'D') THEN
-                 noNeg(_item.item_listprice - (_item.item_listprice * ipsitem_discntprcnt) - ipsitem_fixedamtdiscount) * _iteminvpricerat
+                 noNeg(_item.item_listprice - (_item.item_listprice * ipsitem_discntprcnt) - ipsitem_fixedamtdiscount) * _itempricepricerat
                 WHEN ((ipsitem_type = 'M') AND _long30markups AND _wholesalepricecosting) THEN
-                 (_item.item_listcost / (1.0 - ipsitem_discntprcnt) + ipsitem_fixedamtdiscount) * _iteminvpricerat
+                 (_item.item_listcost / (1.0 - ipsitem_discntprcnt) + ipsitem_fixedamtdiscount) * _itempricepricerat
                 WHEN ((ipsitem_type = 'M') AND _long30markups) THEN
-                 (_item.invcost / (1.0 - ipsitem_discntprcnt) + ipsitem_fixedamtdiscount) * _iteminvpricerat
+                 (_item.invcost / (1.0 - ipsitem_discntprcnt) + ipsitem_fixedamtdiscount) * _itempricepricerat
                 WHEN (ipsitem_type = 'M' AND _wholesalepricecosting) THEN
-                 (_item.item_listcost + (_item.item_listcost * ipsitem_discntprcnt) + ipsitem_fixedamtdiscount) * _iteminvpricerat
+                 (_item.item_listcost + (_item.item_listcost * ipsitem_discntprcnt) + ipsitem_fixedamtdiscount) * _itempricepricerat
                 WHEN (ipsitem_type = 'M') THEN
-                 (_item.invcost + (_item.invcost * ipsitem_discntprcnt) + ipsitem_fixedamtdiscount) * _iteminvpricerat
+                 (_item.invcost + (_item.invcost * ipsitem_discntprcnt) + ipsitem_fixedamtdiscount) * _itempricepricerat
                 ELSE 0.00
            END AS protoprice,
            CASE WHEN (ipsitem_item_id=_item.item_id) THEN itemuomtouom(ipsitem_item_id, ipsitem_qty_uom_id, NULL, ipsitem_qtybreak)
diff --git a/foundation-database/public/patches/fixflcol.sql b/foundation-database/public/patches/fixflcol.sql
new file mode 100644 (file)
index 0000000..aa526c6
--- /dev/null
@@ -0,0 +1,183 @@
+-- 4.4.1 and 4.5.0 fix - synchronize flcol_report_id
+do $$
+begin
+if fetchMetricText('ServerVersion') < '4.6.0' then
+
+update flcol set flcol_report_id = (select report_id from report
+                                    where report_name = 'FinancialReport'
+                                    order by report_grade desc
+                                    limit 1)
+where flcol_report_id=285
+and flcol_id in (
+  select flcol_id
+  from flcol left join report on flcol_report_id = report_id
+  where report_id is null)
+;
+
+update flcol set flcol_report_id = (select report_id from report
+                                    where report_name = 'FinancialReportMonth'
+                                    order by report_grade desc
+                                    limit 1)
+where flcol_report_id in (375, 335)
+and flcol_id in (
+  select flcol_id
+  from flcol left join report on flcol_report_id = report_id
+  where report_id is null)
+;
+
+update flcol set flcol_report_id = (select report_id from report
+                                    where report_name = 'FinancialReportMonthBudget'
+                                    order by report_grade desc
+                                    limit 1)
+where flcol_report_id in (376, 336)
+and flcol_id in (
+  select flcol_id
+  from flcol left join report on flcol_report_id = report_id
+  where report_id is null)
+;
+
+update flcol set flcol_report_id = (select report_id from report
+                                    where report_name = 'FinancialReportMonthDbCr'
+                                    order by report_grade desc
+                                    limit 1)
+where flcol_report_id=387
+and flcol_id in (
+  select flcol_id
+  from flcol left join report on flcol_report_id = report_id
+  where report_id is null)
+;
+
+update flcol set flcol_report_id = (select report_id from report
+                                    where report_name = 'FinancialReportMonthPriorMonth'
+                                    order by report_grade desc
+                                    limit 1)
+where flcol_report_id in (377, 337)
+and flcol_id in (
+  select flcol_id
+  from flcol left join report on flcol_report_id = report_id
+  where report_id is null)
+;
+
+update flcol set flcol_report_id = (select report_id from report
+                                    where report_name = 'FinancialReportMonthPriorQuarter'
+                                    order by report_grade desc
+                                    limit 1)
+where flcol_report_id in (386, 346)
+and flcol_id in (
+  select flcol_id
+  from flcol left join report on flcol_report_id = report_id
+  where report_id is null)
+;
+
+update flcol set flcol_report_id = (select report_id from report
+                                    where report_name = 'FinancialReportMonthPriorYear'
+                                    order by report_grade desc
+                                    limit 1)
+where flcol_report_id in (378, 338)
+and flcol_id in (
+  select flcol_id
+  from flcol left join report on flcol_report_id = report_id
+  where report_id is null)
+;
+
+update flcol set flcol_report_id = (select report_id from report
+                                    where report_name = 'FinancialReportMonthQuarter'
+                                    order by report_grade desc
+                                    limit 1)
+where flcol_report_id in (379, 339)
+and flcol_id in (
+  select flcol_id
+  from flcol left join report on flcol_report_id = report_id
+  where report_id is null)
+;
+
+update flcol set flcol_report_id = (select report_id from report
+                                    where report_name = 'FinancialReportMonthYear'
+                                    order by report_grade desc
+                                    limit 1)
+where flcol_report_id in (374, 334)
+and flcol_id in (
+  select flcol_id
+  from flcol left join report on flcol_report_id = report_id
+  where report_id is null)
+;
+
+update flcol set flcol_report_id = (select report_id from report
+                                    where report_name = 'FinancialReportQuarter'
+                                    order by report_grade desc
+                                    limit 1)
+where flcol_report_id in (380, 340)
+and flcol_id in (
+  select flcol_id
+  from flcol left join report on flcol_report_id = report_id
+  where report_id is null)
+;
+
+update flcol set flcol_report_id = (select report_id from report
+                                    where report_name = 'FinancialReportQuarterBudget'
+                                    order by report_grade desc
+                                    limit 1)
+where flcol_report_id in (381, 341)
+and flcol_id in (
+  select flcol_id
+  from flcol left join report on flcol_report_id = report_id
+  where report_id is null)
+;
+
+update flcol set flcol_report_id = (select report_id from report
+                                    where report_name = 'FinancialReportQuarterPriorQuarter'
+                                    order by report_grade desc
+                                    limit 1)
+where flcol_report_id in (382, 342)
+and flcol_id in (
+  select flcol_id
+  from flcol left join report on flcol_report_id = report_id
+  where report_id is null)
+;
+
+update flcol set flcol_report_id = (select report_id from report
+                                    where report_name = 'FinancialReportYear'
+                                    order by report_grade desc
+                                    limit 1)
+where flcol_report_id in (383, 343)
+and flcol_id in (
+  select flcol_id
+  from flcol left join report on flcol_report_id = report_id
+  where report_id is null)
+;
+
+update flcol set flcol_report_id = (select report_id from report
+                                    where report_name = 'FinancialReportYearBudget'
+                                    order by report_grade desc
+                                    limit 1)
+where flcol_report_id in (384, 344)
+and flcol_id in (
+  select flcol_id
+  from flcol left join report on flcol_report_id = report_id
+  where report_id is null)
+;
+
+update flcol set flcol_report_id = (select report_id from report
+                                    where report_name = 'FinancialReportYearPriorYear'
+                                    order by report_grade desc
+                                    limit 1)
+where flcol_report_id in (385, 345)
+and flcol_id in (
+  select flcol_id
+  from flcol left join report on flcol_report_id = report_id
+  where report_id is null)
+;
+
+update flcol set flcol_report_id = (select report_id from report
+                                    where report_name = 'FinancialTrend'
+                                    order by report_grade desc
+                                    limit 1)
+where flcol_report_id=388
+and flcol_id in (
+  select flcol_id
+  from flcol left join report on flcol_report_id = report_id
+  where report_id is null)
+;
+
+end if;
+end$$;
\ No newline at end of file
index 377f256..0ed0c04 100644 (file)
@@ -22,11 +22,14 @@ SELECT ipsitem_id AS id, 1 AS altid,
                   WHEN ((ipsitem_type = 'M') AND fetchMetricBool('Long30Markups') AND fetchMetricBool('WholesalePriceCosting')) THEN
                    (item_listcost / (1.0 - ipsitem_discntprcnt) + ipsitem_fixedamtdiscount)
                   WHEN ((ipsitem_type = 'M') AND fetchMetricBool('Long30Markups')) THEN
-                   (itemCost(itemsite_id) / (1.0 - ipsitem_discntprcnt) + ipsitem_fixedamtdiscount)
+                   (itemCost(itemsite_id) / itemuomtouomratio(item_id, ipsitem_qty_uom_id, ipsitem_price_uom_id) /
+                   (1.0 - ipsitem_discntprcnt) + ipsitem_fixedamtdiscount)
                   WHEN (ipsitem_type = 'M' AND fetchMetricBool('WholesalePriceCosting')) THEN
                    (item_listcost + (item_listcost * ipsitem_discntprcnt) + ipsitem_fixedamtdiscount)
                   WHEN (ipsitem_type = 'M') THEN
-                   (itemCost(itemsite_id) + (itemCost(itemsite_id) * ipsitem_discntprcnt) + ipsitem_fixedamtdiscount)
+                   (itemCost(itemsite_id) / itemuomtouomratio(item_id, ipsitem_qty_uom_id, ipsitem_price_uom_id) +
+                    (itemCost(itemsite_id) / itemuomtouomratio(item_id, ipsitem_qty_uom_id, ipsitem_price_uom_id) * ipsitem_discntprcnt) +
+                    ipsitem_fixedamtdiscount)
                   ELSE 0.0
              END) AS netPrice,
        CASE WHEN (ipsitem_type='N') THEN <? value("nominal") ?>
index 2859c48..b679d8e 100644 (file)
@@ -51,8 +51,12 @@ FROM (
                  (ipsitem_price * itemuomtouomratio(<? value('item_id') ?>, NULL, ipsitem_price_uom_id)) * iteminvpricerat(ipsitem_item_id)
                 WHEN (ipsitem_type = 'D') THEN
                  noNeg(<? value('item_listprice') ?> - (<? value('item_listprice') ?> * ipsitem_discntprcnt) - ipsitem_fixedamtdiscount)
+                WHEN ((ipsitem_type = 'M') AND fetchMetricBool('Long30Markups') AND fetchMetricBool('WholesalePriceCosting')) THEN
+                 (<? value('item_listcost') ?> / (1.0 - ipsitem_discntprcnt) + ipsitem_fixedamtdiscount)
                 WHEN ((ipsitem_type = 'M') AND fetchMetricBool('Long30Markups')) THEN
                  (<? value('item_unitcost') ?> / (1.0 - ipsitem_discntprcnt) + ipsitem_fixedamtdiscount)
+                WHEN (ipsitem_type = 'M' AND fetchMetricBool('WholesalePriceCosting')) THEN
+                 (<? value('item_listcost') ?> + (<? value('item_listcost') ?> * ipsitem_discntprcnt) + ipsitem_fixedamtdiscount)
                 WHEN (ipsitem_type = 'M') THEN
                  (<? value('item_unitcost') ?> + (<? value('item_unitcost') ?> * ipsitem_discntprcnt) + ipsitem_fixedamtdiscount)
                 ELSE 0.00
@@ -101,11 +105,16 @@ FROM (
                 ELSE ipsitem_qtybreak
            END AS invqty,
            ipsitem_qtybreak AS qtybreak,
-           CASE WHEN ipsitem_type = 'N' THEN (ipsitem_price * itemuomtouomratio(<? value('item_id') ?>, NULL, ipsitem_price_uom_id)) *
-                                              iteminvpricerat(ipsitem_item_id)
-                WHEN ipsitem_type = 'D' THEN noNeg(<? value('item_listprice') ?> - (<? value('item_listprice') ?> * ipsitem_discntprcnt) - ipsitem_fixedamtdiscount)
+           CASE WHEN ipsitem_type = 'N' THEN
+                 (ipsitem_price * itemuomtouomratio(<? value('item_id') ?>, NULL, ipsitem_price_uom_id)) * iteminvpricerat(ipsitem_item_id)
+                WHEN ipsitem_type = 'D' THEN
+                 noNeg(<? value('item_listprice') ?> - (<? value('item_listprice') ?> * ipsitem_discntprcnt) - ipsitem_fixedamtdiscount)
+                WHEN ((ipsitem_type = 'M') AND fetchMetricBool('Long30Markups') AND fetchMetricBool('WholesalePriceCosting')) THEN
+                 (<? value('item_listcost') ?> / (1.0 - ipsitem_discntprcnt) + ipsitem_fixedamtdiscount)
                 WHEN ((ipsitem_type = 'M') AND fetchMetricBool('Long30Markups')) THEN
                  (<? value('item_unitcost') ?> / (1.0 - ipsitem_discntprcnt) + ipsitem_fixedamtdiscount)
+                WHEN (ipsitem_type = 'M' AND fetchMetricBool('WholesalePriceCosting')) THEN
+                 (<? value('item_listcost') ?> + (<? value('item_listcost') ?> * ipsitem_discntprcnt) + ipsitem_fixedamtdiscount)
                 WHEN (ipsitem_type = 'M') THEN
                  (<? value('item_unitcost') ?> + (<? value('item_unitcost') ?> * ipsitem_discntprcnt) + ipsitem_fixedamtdiscount)
                 ELSE 0.00
index 3f06697..abd4a32 100644 (file)
@@ -101,8 +101,7 @@ SELECT coitem_id,
        END AS discountfromcust,
        coitem_unitcost,
        CASE WHEN (coitem_price = 0.0) THEN 0.0
-            ELSE ROUND((coitem_qtyord * coitem_qty_invuomratio) *
-                 ((coitem_price / coitem_price_invuomratio) - (coitem_unitcost / coitem_price_invuomratio)),2)
+            ELSE ROUND(coitem_qtyord * coitem_qty_invuomratio * (coitem_price - coitem_unitcost) / coitem_price_invuomratio,2)
        END AS margin,
        CASE WHEN (coitem_price = 0.0) THEN 0.0
             ELSE ((coitem_price - coitem_unitcost) / coitem_price)
index 8a3f525..d86e089 100644 (file)
@@ -223,9 +223,9 @@ var  async = require('async'),
         winston.info("Applying build to database " + spec.database);
         credsClone.database = spec.database;
         buildDatabaseUtil.sendToDatabase(allSql, credsClone, spec, function (err, res) {
-          if (spec.populateData) {
+          if (spec.populateData && creds.encryptionKeyFile) {
             var populateSql = "DO $$ XT.disableLocks = true; $$ language plv8;";
-            var encryptionKey = fs.readFileSync(path.join(__dirname, "../../node-datasource", creds.encryptionKeyFile), "utf8");
+            var encryptionKey = fs.readFileSync(path.resolve(__dirname, "../../node-datasource", creds.encryptionKeyFile), "utf8");
             var patches = require(path.join(__dirname, "../../enyo-client/database/source/populate_data")).patches;
             _.each(patches, function (patch) {
               patch.encryptionKey = encryptionKey;
index f8161dc..4853c2b 100644 (file)
@@ -1,5 +1,5 @@
-<package id        = "distribution-install-451"
-         version   = "4.5.1"
+<package id        = "distribution-install-452"
+         version   = "4.5.2"
          developer = "xTuple"
          descrip   = "load PostBooks resources"
          updater   = "2.2.4" >
@@ -19,8 +19,8 @@
 
   <prerequisite type = "query"
                 name = "Checking for bad xTuple ERP database version" >
-    <query>SELECT NOT fetchMetricText('ServerVersion') > '4.5.1' AND fetchMetricText('ServerVersion')!='4.5.0Beta' AND fetchMetricText('ServerVersion')!='4.5.0RC';</query>
-    <message>This package may not be applied to a 4.5.1+ PostBooks database.
+    <query>SELECT NOT fetchMetricText('ServerVersion') > '4.5.2' AND fetchMetricText('ServerVersion')!='4.5.0Beta' AND fetchMetricText('ServerVersion')!='4.5.0RC';</query>
+    <message>This package may not be applied to a 4.5.2+ PostBooks database.
     </message>
   </prerequisite>
 
index 9dc2cbe..73c3541 100644 (file)
@@ -1,5 +1,5 @@
-<package id        = "distribution-upgrade-451"
-         version   = "4.5.1"
+<package id        = "distribution-upgrade-452"
+         version   = "4.5.2"
          developer = "xTuple"
          descrip   = "load PostBooks resources"
          updater   = "2.2.4" >
@@ -19,8 +19,8 @@
 
  <prerequisite type = "query"
                name = "Checking for bad xTuple ERP database version" >
-<query>SELECT NOT fetchMetricText('ServerVersion') > '4.5.1' AND fetchMetricText('ServerVersion')!='4.5.0Beta' AND fetchMetricText('ServerVersion')!='4.5.0RC';</query>
-    <message>This package may not be applied to a 4.5.1+ Distribution database.
+<query>SELECT NOT fetchMetricText('ServerVersion') > '4.5.2' AND fetchMetricText('ServerVersion')!='4.5.0Beta' AND fetchMetricText('ServerVersion')!='4.5.0RC';</query>
+    <message>This package may not be applied to a 4.5.2+ Distribution database.
     </message>
   </prerequisite>
 
index b459789..139692b 100644 (file)
@@ -1,5 +1,5 @@
-<package id        = "postbooks-upgrade-451"
-         version   = "4.5.1"
+<package id        = "postbooks-upgrade-452"
+         version   = "4.5.2"
          developer = "xTuple"
          descrip   = "load PostBooks resources"
          updater   = "2.2.4" >
@@ -19,8 +19,8 @@
 
   <prerequisite type = "query"
                 name = "Checking for bad xTuple ERP database version" >
-    <query>SELECT NOT fetchMetricText('ServerVersion') > '4.5.1' AND fetchMetricText('ServerVersion')!='4.5.0Beta' AND fetchMetricText('ServerVersion')!='4.5.0RC';</query>
-    <message>This package may not be applied to a 4.5.1+ Postbooks database.
+    <query>SELECT NOT fetchMetricText('ServerVersion') > '4.5.2' AND fetchMetricText('ServerVersion')!='4.5.0Beta' AND fetchMetricText('ServerVersion')!='4.5.0RC';</query>
+    <message>This package may not be applied to a 4.5.2+ Postbooks database.
     </message>
   </prerequisite>
 
index 13d432b..35c516f 100644 (file)
@@ -1,5 +1,5 @@
-<package id        = "manufacturing-install-451"
-         version   = "4.5.1"
+<package id        = "manufacturing-install-452"
+         version   = "4.5.2"
          developer = "xTuple"
          descrip   = "load PostBooks resources"
          updater   = "2.2.4" >
@@ -19,8 +19,8 @@
 
   <prerequisite type = "query"
                 name = "Checking for bad xTuple ERP database version" >
-    <query>SELECT NOT fetchMetricText('ServerVersion') > '4.5.1' AND fetchMetricText('ServerVersion')!='4.5.0Beta' AND fetchMetricText('ServerVersion')!='4.5.0RC';</query>
-    <message>This package may not be applied to a 4.5.1+ PostBooks database.
+    <query>SELECT NOT fetchMetricText('ServerVersion') > '4.5.2' AND fetchMetricText('ServerVersion')!='4.5.0Beta' AND fetchMetricText('ServerVersion')!='4.5.0RC';</query>
+    <message>This package may not be applied to a 4.5.2+ PostBooks database.
     </message>
   </prerequisite>
 
index b11eacd..47f5068 100644 (file)
@@ -1,5 +1,5 @@
-<package id        = "manufacturing-upgrade-451"
-         version   = "4.5.1"
+<package id        = "manufacturing-upgrade-452"
+         version   = "4.5.2"
          developer = "xTuple"
          descrip   = "load PostBooks resources"
          updater   = "2.2.4" >
@@ -30,8 +30,8 @@
 
 <prerequisite type = "query"
                name = "Checking for bad xTuple ERP database version" >
-<query>SELECT NOT fetchMetricText('ServerVersion') > '4.5.1' AND fetchMetricText('ServerVersion')!='4.5.0Beta' AND fetchMetricText('ServerVersion')!='4.5.0RC';</query>
-    <message>This package may not be applied to a 4.5.1+ Manufacturing database.
+<query>SELECT NOT fetchMetricText('ServerVersion') > '4.5.2' AND fetchMetricText('ServerVersion')!='4.5.0Beta' AND fetchMetricText('ServerVersion')!='4.5.0RC';</query>
+    <message>This package may not be applied to a 4.5.2+ Manufacturing database.
     </message>
 </prerequisite>