details: /erp/devel/pi/rev/b1ac7d7024e4
changeset: 11595:b1ac7d7024e4
user: Ainhoa Pagola <ainhoa.pagola <at> openbravo.com>
date: Fri Apr 08 14:41:44 2011 +0200
summary: Fixes bug 15820. Price List Report does not work properly with
PriceList filter empty
details: /erp/devel/pi/rev/48c2dc0d0441
changeset: 11596:48c2dc0d0441
user: Ainhoa Pagola <ainhoa.pagola <at> openbravo.com>
date: Fri Apr 08 14:42:31 2011 +0200
summary: Fixes bug 16699. Product selector cleared ater searching in Price
List Report
details: /erp/devel/pi/rev/7cb2887553c9
changeset: 11597:7cb2887553c9
user: Ainhoa Pagola <ainhoa.pagola <at> openbravo.com>
date: Mon Apr 11 13:52:58 2011 +0200
summary: Fixes issue 16671. Read only logic set for Internal Consuption Date
details: /erp/devel/pi/rev/601527a7b71a
changeset: 11598:601527a7b71a
user: Ainhoa Pagola <ainhoa.pagola <at> openbravo.com>
date: Mon Apr 11 18:10:06 2011 +0200
summary: Fixes issue 16512. Error in shipments with negative quantities and
negative stock
details: /erp/devel/pi/rev/0dae56698af3
changeset: 11599:0dae56698af3
user: Ainhoa Pagola <ainhoa.pagola <at> openbravo.com>
date: Wed Apr 13 19:55:23 2011 +0200
summary: Fixes issue 16187. Wrong Message when process a batch
details: /erp/devel/pi/rev/1d16cc5f261c
changeset: 11600:1d16cc5f261c
user: Ainhoa Pagola <ainhoa.pagola <at> openbravo.com>
date: Thu Apr 14 16:07:08 2011 +0200
summary: Fixes issue 16008, fixes issue 16009. Error control added to
M_freight_calculate function
diffstat:
src-db/database/model/functions/GL_JOURNAL_POST.xml | 4 +-
src-db/database/model/functions/M_FREIGHT_CALCULATE.xml | 126 +++++++++-
src-db/database/model/functions/M_INOUT_CREATE.xml | 2 +
src-db/database/sourcedata/AD_COLUMN.xml | 3 +-
src-db/database/sourcedata/AD_MESSAGE.xml | 165 ++++++++++++
src/org/openbravo/erpCommon/ad_reports/ReportPricelist.html | 4 +-
src/org/openbravo/erpCommon/ad_reports/ReportPricelist.java | 14 +-
7 files changed, 301 insertions(+), 17 deletions(-)
diffs (truncated from 565 to 300 lines):
diff -r a73656f036c2 -r 1d16cc5f261c
src-db/database/model/functions/GL_JOURNAL_POST.xml
--- a/src-db/database/model/functions/GL_JOURNAL_POST.xml Wed Apr 20
01:43:09 2011 +0200
+++ b/src-db/database/model/functions/GL_JOURNAL_POST.xml Thu Apr 14
16:07:08 2011 +0200
@@ -22,7 +22,7 @@
* parts created by ComPiere are Copyright (C) ComPiere, Inc.;
* All Rights Reserved.
* Contributor(s): Openbravo SLU
- * Contributions are Copyright (C) 2001-2009 Openbravo, S.L.U.
+ * Contributions are Copyright (C) 2001-2011 Openbravo, S.L.U.
*
* Specifically, this derivative work is based upon the following Compiere
* file and version.
@@ -288,7 +288,7 @@
IF(p_PInstance_ID IS NOT NULL) THEN
AD_UPDATE_PINSTANCE(p_PInstance_ID, NULL, 'N', 0, v_ResultStr) ;
ELSE
- RAISE_APPLICATION_ERROR(-20100, v_ResultStr) ;
+ RAISE;
END IF;
RETURN;
END GL_JOURNAL_POST
diff -r a73656f036c2 -r 1d16cc5f261c
src-db/database/model/functions/M_FREIGHT_CALCULATE.xml
--- a/src-db/database/model/functions/M_FREIGHT_CALCULATE.xml Wed Apr 20
01:43:09 2011 +0200
+++ b/src-db/database/model/functions/M_FREIGHT_CALCULATE.xml Thu Apr 14
16:07:08 2011 +0200
@@ -16,7 +16,7 @@
* under the License.
* The Original Code is Openbravo ERP.
* The Initial Developer of the Original Code is Openbravo SLU
-* All portions are Copyright (C) 2001-2009 Openbravo SLU
+* All portions are Copyright (C) 2001-2011 Openbravo SLU
* All Rights Reserved.
* Contributor(s): ______________________________________.
************************************************************************/
@@ -47,6 +47,11 @@
v_RoundLine CHAR(1) ;
v_RoundTotal CHAR(1) ;
v_FreightUnit VARCHAR2(60) ;
+ v_count NUMBER;
+ v_From_Region_ID VARCHAR2(32);
+ v_TO_Region_ID VARCHAR2(32);
+ v_QtyFrom NUMBER;
+ v_QtyTo NUMBER;
BEGIN
-- Get Parameters
v_ResultStr:='ReadingParameters';
@@ -78,6 +83,11 @@
DBMS_OUTPUT.PUT_LINE(' Calc_qty=' || v_Calc_Qty) ;
END IF;
END LOOP; -- Get Parameter
+
+ IF (v_Calc_Qty='N' AND v_Cheaper='N') THEN
+ RAISE_APPLICATION_ERROR(-20000, '@NoFreightParam@');
+ END IF;
+
DBMS_OUTPUT.PUT_LINE(' v_Record_ID=' || v_Record_ID) ;
v_ResultStr:='Select variables';
SELECT M_Shipper_ID,
@@ -94,6 +104,11 @@
v_Freight_Currency_ID
FROM M_InOut
WHERE M_InOut_ID=v_Record_ID;
+
+ IF (v_FreightCategory_ID IS NULL) THEN
+ RAISE_APPLICATION_ERROR(-20000, '@NoFreightCatSelected@');
+ END IF;
+
v_ResultStr:='Set to and from region';
IF(v_IsSOTrx='Y') THEN
SELECT COALESCE(dl.C_REGION_ID, l.C_REGION_ID),
@@ -114,6 +129,14 @@
AND i.M_WAREHOUSE_ID=w.M_WAREHOUSE_ID
AND w.C_LOCATION_ID=wl.C_LOCATION_ID
AND i.M_InOut_ID=v_Record_ID;
+
+ IF (v_To_ID IS NULL) THEN
+ RAISE_APPLICATION_ERROR(-20000, '@NoBPRegion@');
+ END IF;
+ IF (v_From_ID IS NULL) THEN
+ RAISE_APPLICATION_ERROR(-20000, '@NoWarehouseRegion@');
+ END IF;
+
ELSE
SELECT COALESCE(dl.C_REGION_ID, l.C_REGION_ID),
wl.C_REGION_ID
@@ -133,6 +156,13 @@
AND i.M_WAREHOUSE_ID=w.M_WAREHOUSE_ID
AND w.C_LOCATION_ID=wl.C_LOCATION_ID
AND i.M_InOut_ID=v_Record_ID;
+
+ IF (v_To_ID IS NULL) THEN
+ RAISE_APPLICATION_ERROR(-20000, '@NoWarehouseRegion@');
+ END IF;
+ IF (v_From_ID IS NULL) THEN
+ RAISE_APPLICATION_ERROR(-20000, '@NoBPRegion@');
+ END IF;
END IF;
SELECT TOTAL_ROUND,
LINE_ROUND,
@@ -142,8 +172,37 @@
v_FreightUnit
FROM M_FreightCategory
WHERE M_FreightCategory_ID=v_FreightCategory_ID;
+
+ IF v_RoundTotal IS NULL OR v_RoundLine IS NULL OR v_FreightUnit IS NULL
THEN
+ RAISE_APPLICATION_ERROR(-20000, '@NoFreightCatRounding@');
+ END IF;
+
+ SELECT COUNT(*)
+ INTO v_Count
+ FROM M_InOutLine l,
+ M_Product p
+ WHERE l.M_Product_ID=p.M_Product_ID
+ AND M_InOut_ID=v_Record_ID;
+ IF (v_count=0) THEN
+ RAISE_APPLICATION_ERROR(-20000, '@FreightNoLines@');
+ END IF;
+
v_ResultStr:='Calculate freight quantity';
IF(v_Calc_Qty='Y') THEN
+
+ IF v_FreightUnit='P' THEN
+ SELECT COUNT(*)
+ INTO v_count
+ FROM M_InOutLine l,
+ M_Product p
+ WHERE l.M_Product_ID=p.M_Product_ID
+ AND M_InOut_ID=v_Record_ID
+ AND (p.unitsperpallet IS NULL OR p.unitsperpallet = 0);
+ IF (v_count>0) THEN
+ RAISE_APPLICATION_ERROR(-20000, '@FreightNoUnitsPerPallet@');
+ END IF;
+ END IF;
+
SELECT
CASE v_RoundLine WHEN 'N' THEN
CASE v_RoundTotal WHEN 'N' THEN sum(QTY) WHEN 'I' THEN
trunc(sum(QTY)) WHEN 'U' THEN CEIL(sum(QTY)) WHEN 'R' THEN ROUND(sum(QTY), 0)
@@ -169,11 +228,23 @@
UPDATE M_InOut SET NoPackages=v_Qty WHERE M_InOut_ID=v_Record_ID;
END IF;
BEGIN
+
IF(v_Cheaper='Y') THEN
v_ResultStr:='Calculate cheaper amount';
DECLARE
Cur_M_FreightSelect RECORD;
BEGIN
+
+ SELECT COUNT(*)
+ INTO v_Count
+ FROM M_Freight
+ WHERE M_FreightCategory_ID=v_FreightCategory_ID
+ AND ValidFrom<v_date
+ AND (v_Freight_Currency_ID IS NULL OR
C_Currency_ID=v_Freight_Currency_ID);
+ IF (v_count=0) THEN
+ RAISE_APPLICATION_ERROR(-20000, '@FreightNotDefined@');
+ END IF;
+
FOR Cur_M_FreightSelect IN
(SELECT f.M_Shipper_ID, f.C_Currency_ID,
CASE isprice WHEN 'Y' THEN freightamt*v_Qty ELSE freightamt
@@ -207,12 +278,61 @@
v_Currency_ID:=Cur_M_FreightSelect.C_Currency_ID;
EXIT;
END LOOP;
+ IF v_Amt IS NULL THEN
+ RAISE_APPLICATION_ERROR(-20000, '@FreightNotConfigured@');
+ END IF;
END;
ELSE
v_ResultStr:='Calculate amount';
DECLARE
Cur_M_FreightSelect RECORD;
BEGIN
+
+ IF (v_Shipper_ID IS NULL) THEN
+ RAISE_APPLICATION_ERROR(-20000, '@NoShipperSelected@');
+ END IF;
+
+ SELECT COUNT(*)
+ INTO v_Count
+ FROM M_Freight
+ WHERE M_FreightCategory_ID=v_FreightCategory_ID
+ AND ValidFrom<v_date
+ AND M_Shipper_ID=v_Shipper_ID
+ AND (v_Freight_Currency_ID IS NULL OR
C_Currency_ID=v_Freight_Currency_ID);
+ IF (v_count=0) THEN
+ RAISE_APPLICATION_ERROR(-20000, '@FreightNotDefined@');
+ END IF;
+
+ SELECT C_Region_ID, TO_Region_ID, QtyFrom, QtyTo
+ INTO v_From_Region_ID, v_TO_Region_ID, v_QtyFrom, v_QtyTo
+ FROM M_Freight
+ WHERE M_FreightCategory_ID=v_FreightCategory_ID
+ AND ValidFrom<v_date
+ AND M_Shipper_ID=v_Shipper_ID
+ AND (v_Freight_Currency_ID IS NULL OR
C_Currency_ID=v_Freight_Currency_ID)
+ AND validFrom = (SELECT max(validFrom)
+ FROM M_Freight
+ WHERE M_FreightCategory_ID=v_FreightCategory_ID
+ AND ValidFrom<v_date
+ AND M_Shipper_ID=v_Shipper_ID
+ AND (v_Freight_Currency_ID IS NULL OR
C_Currency_ID=v_Freight_Currency_ID));
+
+ IF v_From_Region_ID IS NULL OR v_TO_Region_ID IS NULL THEN
+ RAISE_APPLICATION_ERROR(-20000, '@NoFreightRegion@');
+ END IF;
+
+ IF v_QtyFrom IS NULL OR v_QtyTo IS NULL THEN
+ RAISE_APPLICATION_ERROR(-20000, '@FreightMinMaxQuantity@');
+ END IF;
+
+ IF v_Qty<v_QtyFrom THEN
+ RAISE_APPLICATION_ERROR(-20000, '@FreightMinQuantity@');
+ END IF;
+
+ IF v_Qty>v_QtyTo THEN
+ RAISE_APPLICATION_ERROR(-20000, '@FreightMaxQuantity@');
+ END IF;
+
FOR Cur_M_FreightSelect IN
(SELECT M_Shipper_ID, C_Currency_ID,
CASE isprice WHEN 'Y' THEN freightamt*v_Qty ELSE freightamt
@@ -234,6 +354,10 @@
v_Currency_ID:=Cur_M_FreightSelect.C_Currency_ID;
EXIT;
END LOOP;
+
+ IF v_Amt IS NULL THEN
+ RAISE_APPLICATION_ERROR(-20000, '@FreightNotFound@');
+ END IF;
END;
END IF;
EXCEPTION
diff -r a73656f036c2 -r 1d16cc5f261c
src-db/database/model/functions/M_INOUT_CREATE.xml
--- a/src-db/database/model/functions/M_INOUT_CREATE.xml Wed Apr 20
01:43:09 2011 +0200
+++ b/src-db/database/model/functions/M_INOUT_CREATE.xml Thu Apr 14
16:07:08 2011 +0200
@@ -418,6 +418,8 @@
FETCH Cur_Storage INTO v_storage;
IF Cur_Storage%NOTFOUND THEN
NEXT_PRODUCT:=true;
+ CLOSE Cur_Storage;
+ Cur_Storage_ISOPEN:=false;
END IF;
IF(NOT NEXT_PRODUCT) THEN
v_QtyStorage:=v_storage.QtyOnHand;
diff -r a73656f036c2 -r 1d16cc5f261c src-db/database/sourcedata/AD_COLUMN.xml
--- a/src-db/database/sourcedata/AD_COLUMN.xml Wed Apr 20 01:43:09 2011 +0200
+++ b/src-db/database/sourcedata/AD_COLUMN.xml Thu Apr 14 16:07:08 2011 +0200
@@ -217403,6 +217403,7 @@
<!--802758--> <ISPARENT><![CDATA[N]]></ISPARENT>
<!--802758--> <ISMANDATORY><![CDATA[Y]]></ISMANDATORY>
<!--802758--> <ISUPDATEABLE><![CDATA[Y]]></ISUPDATEABLE>
+<!--802758--> <READONLYLOGIC><![CDATA[@Processed@='Y']]></READONLYLOGIC>
<!--802758--> <ISIDENTIFIER><![CDATA[N]]></ISIDENTIFIER>
<!--802758--> <SEQNO><![CDATA[110]]></SEQNO>
<!--802758--> <ISTRANSLATED><![CDATA[N]]></ISTRANSLATED>
@@ -217478,7 +217479,7 @@
<!--802760--> <ISENCRYPTED><![CDATA[N]]></ISENCRYPTED>
<!--802760--> <ISSELECTIONCOLUMN><![CDATA[N]]></ISSELECTIONCOLUMN>
<!--802760--> <AD_ELEMENT_ID><![CDATA[1047]]></AD_ELEMENT_ID>
-<!--802760--> <ISSESSIONATTR><![CDATA[N]]></ISSESSIONATTR>
+<!--802760--> <ISSESSIONATTR><![CDATA[Y]]></ISSESSIONATTR>
<!--802760--> <ISSECONDARYKEY><![CDATA[N]]></ISSECONDARYKEY>
<!--802760--> <ISDESENCRYPTABLE><![CDATA[N]]></ISDESENCRYPTABLE>
<!--802760--> <DEVELOPMENTSTATUS><![CDATA[RE]]></DEVELOPMENTSTATUS>
diff -r a73656f036c2 -r 1d16cc5f261c src-db/database/sourcedata/AD_MESSAGE.xml
--- a/src-db/database/sourcedata/AD_MESSAGE.xml Wed Apr 20 01:43:09 2011 +0200
+++ b/src-db/database/sourcedata/AD_MESSAGE.xml Thu Apr 14 16:07:08 2011 +0200
@@ -29785,6 +29785,17 @@
<!--0EABAB89726A4A3C800199142CF8E17F-->
<AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID>
<!--0EABAB89726A4A3C800199142CF8E17F--></AD_MESSAGE>
+<!--0FB62BBD5E134E3C972A446ACC687715--><AD_MESSAGE>
+<!--0FB62BBD5E134E3C972A446ACC687715-->
<AD_MESSAGE_ID><![CDATA[0FB62BBD5E134E3C972A446ACC687715]]></AD_MESSAGE_ID>
+<!--0FB62BBD5E134E3C972A446ACC687715-->
<AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
+<!--0FB62BBD5E134E3C972A446ACC687715--> <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
+<!--0FB62BBD5E134E3C972A446ACC687715--> <ISACTIVE><![CDATA[Y]]></ISACTIVE>
+<!--0FB62BBD5E134E3C972A446ACC687715-->
<VALUE><![CDATA[NoFreightCatSelected]]></VALUE>
+<!--0FB62BBD5E134E3C972A446ACC687715--> <MSGTEXT><![CDATA[There is no freight
category selected]]></MSGTEXT>
+<!--0FB62BBD5E134E3C972A446ACC687715--> <MSGTYPE><![CDATA[E]]></MSGTYPE>
+<!--0FB62BBD5E134E3C972A446ACC687715-->
<AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID>
+<!--0FB62BBD5E134E3C972A446ACC687715--></AD_MESSAGE>
+
<!--0FC7B0C6F4FC4F04BEAD06F30E895516--><AD_MESSAGE>
<!--0FC7B0C6F4FC4F04BEAD06F30E895516-->
<AD_MESSAGE_ID><![CDATA[0FC7B0C6F4FC4F04BEAD06F30E895516]]></AD_MESSAGE_ID>
<!--0FC7B0C6F4FC4F04BEAD06F30E895516-->
<AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
@@ -30082,6 +30093,28 @@
<!--1860E10DED5C486D8CF33B7C8104448E-->
<AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID>
<!--1860E10DED5C486D8CF33B7C8104448E--></AD_MESSAGE>
+<!--1961EDB8E6F743B29134D8DA4E411528--><AD_MESSAGE>
+<!--1961EDB8E6F743B29134D8DA4E411528-->
<AD_MESSAGE_ID><![CDATA[1961EDB8E6F743B29134D8DA4E411528]]></AD_MESSAGE_ID>
+<!--1961EDB8E6F743B29134D8DA4E411528-->
<AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
+<!--1961EDB8E6F743B29134D8DA4E411528--> <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
+<!--1961EDB8E6F743B29134D8DA4E411528--> <ISACTIVE><![CDATA[Y]]></ISACTIVE>
+<!--1961EDB8E6F743B29134D8DA4E411528-->
<VALUE><![CDATA[FreightNoLines]]></VALUE>
+<!--1961EDB8E6F743B29134D8DA4E411528--> <MSGTEXT><![CDATA[Freight amount
cannot be calculated because there is no lines]]></MSGTEXT>
+<!--1961EDB8E6F743B29134D8DA4E411528--> <MSGTYPE><![CDATA[E]]></MSGTYPE>
+<!--1961EDB8E6F743B29134D8DA4E411528-->
<AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID>
+<!--1961EDB8E6F743B29134D8DA4E411528--></AD_MESSAGE>
------------------------------------------------------------------------------
Benefiting from Server Virtualization: Beyond Initial Workload
Consolidation -- Increasing the use of server virtualization is a top
priority.Virtualization can reduce costs, simplify management, and improve
application availability and disaster protection. Learn more about boosting
the value of server virtualization. http://p.sf.net/sfu/vmware-sfdev2dev
_______________________________________________
Openbravo-commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openbravo-commits