details:   https://code.openbravo.com/erp/devel/main/rev/c29ffbf0c8ed
changeset: 31690:c29ffbf0c8ed
user:      Víctor Martínez Romanos <victor.martinez <at> openbravo.com>
date:      Wed Mar 08 12:50:21 2017 +0100
summary:   Fixed bug 33581: slow defaults retrieval in add payment

The FIN_Payment table didn't have an index on the c_bpartner_id column, thus 
forcing a sequencial scan in any query run over this table.
Added an index on the c_bpartner_id column to fix that problem.

This index should fix most of the cases, however when for example a concrete 
business partner has an important percentage of the records in that table, the 
previous index would be useless, and the db might decide to run a seq. scan.
To control this scenario we have extended the previous index with a function to 
distinguish credit payments (generated credit != used credit). This way we 
could filter by the credit records for the business partner directly using the 
index.
Note that the function obequals is declared in the prescript because it must be 
defined as IMMUTABLE/DETERMINISTIC and this syntaxis is not supported yet by 
the DBSM.

The AdvPaymentMngtDao.getCustomerPaymentsWithCredit() has been rewritten to 
take advantage of the new index.

details:   https://code.openbravo.com/erp/devel/main/rev/1549a54a672f
changeset: 31691:1549a54a672f
user:      Mark <markmm82 <at> gmail.com>
date:      Wed Mar 15 09:49:13 2017 -0400
summary:   Backed out changeset: 498699b38a5d

details:   https://code.openbravo.com/erp/devel/main/rev/8281d757d8ba
changeset: 31692:8281d757d8ba
user:      Alvaro Ferraz <alvaro.ferraz <at> openbravo.com>
date:      Wed Mar 15 14:36:31 2017 +0100
summary:   Fixes issue 35486: Net Amount not properly rounded in ERP with 
PostgreSQL

Problem was in following calculation: Net Amount = Gross Amount * (Gross Amount 
 / (Gross Amount + Tax Amount)).
In case Gross Amount = 357.99 and Tax Amount = 71.598, Net Amount = 357.99 * 
(357.99 / (357.99 + 71.598)) = 298.325.

It was correct in Oracle as it retrieves 298.325 but it was failing in 
PostgreSQL as it retrieves 298.3249999999999999988067:
SELECT 357.99 * (357.99  / (357.99 + 71.598)) FROM dual;

If we do multiplication before division, we avoid this problem and both 
PostgreSQL and Oracle retrieves the correct result (298.325):
SELECT (357.99 * 357.99)  / (357.99 + 71.598) FROM dual;

details:   https://code.openbravo.com/erp/devel/main/rev/bb77b1e335cb
changeset: 31693:bb77b1e335cb
user:      Alvaro Ferraz <alvaro.ferraz <at> openbravo.com>
date:      Wed Mar 15 14:54:07 2017 +0100
summary:   Related to issue 35486: Add some automated tests

details:   https://code.openbravo.com/erp/devel/main/rev/c43a242ff8f6
changeset: 31694:c43a242ff8f6
user:      Pablo Lujan <pablo.lujan <at> openbravo.com>
date:      Wed Mar 15 17:34:41 2017 +0100
summary:   Fixes issue 35535 and related to issue 29414: Updated browser 
supported/recommended list for PR17Q2

* Chrome. Supported 56, Recommended 57 or higher.
* Firefox. Supported 45, Recommended 52 or higher.
* Internet Explorer. Supported 9, Recommended 11 or higher.
* EdgeHTML (MS Edge). Supported 12, Recommended 13 or higher.
* Safari. Supported 8, Recommended 9 or higher.

details:   https://code.openbravo.com/erp/devel/main/rev/2e6e168839f9
changeset: 31695:2e6e168839f9
user:      RM packaging bot <staff.rm <at> openbravo.com>
date:      Wed Mar 15 19:16:54 2017 +0000
summary:   CI: merge back from main

details:   https://code.openbravo.com/erp/devel/main/rev/3b8cc6900226
changeset: 31696:3b8cc6900226
user:      Asier Lostalé <asier.lostale <at> openbravo.com>
date:      Thu Mar 16 10:24:21 2017 +0100
summary:   fixed bug 35537: 0 concurrent users is seen in About popup for 
unlimited users

  In this case now Unlimited is displayed instead

details:   https://code.openbravo.com/erp/devel/main/rev/41ab6f71c85b
changeset: 31697:41ab6f71c85b
user:      RM packaging bot <staff.rm <at> openbravo.com>
date:      Thu Mar 16 15:19:41 2017 +0000
summary:   CI: update AD_MODULE to version 31696

diffstat:

 modules/org.openbravo.advpaymentmngt/src-db/database/sourcedata/AD_MODULE.xml  
                           |   2 +-
 
modules/org.openbravo.advpaymentmngt/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
                  |   4 +-
 
modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/dao/AdvPaymentMngtDao.java
          |  47 +++-
 
modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/process/FIN_TransactionProcess.java
 |  20 +-
 
modules/org.openbravo.apachejdbcconnectionpool/src-db/database/sourcedata/AD_MODULE.xml
                   |   2 +-
 
modules/org.openbravo.apachejdbcconnectionpool/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
        |   2 +-
 modules/org.openbravo.base.weld/src-db/database/sourcedata/AD_MODULE.xml       
                           |   2 +-
 
modules/org.openbravo.base.weld/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
                       |   2 +-
 
modules/org.openbravo.client.application/src-db/database/sourcedata/AD_MODULE.xml
                         |   2 +-
 
modules/org.openbravo.client.application/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
              |   8 +-
 
modules/org.openbravo.client.htmlwidget/src-db/database/sourcedata/AD_MODULE.xml
                          |   2 +-
 
modules/org.openbravo.client.htmlwidget/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
               |   2 +-
 modules/org.openbravo.client.kernel/src-db/database/sourcedata/AD_MODULE.xml   
                           |   2 +-
 
modules/org.openbravo.client.kernel/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
                   |   6 +-
 modules/org.openbravo.client.myob/src-db/database/sourcedata/AD_MODULE.xml     
                           |   2 +-
 
modules/org.openbravo.client.myob/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
                     |   4 +-
 
modules/org.openbravo.client.querylist/src-db/database/sourcedata/AD_MODULE.xml 
                          |   2 +-
 
modules/org.openbravo.client.querylist/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
                |   2 +-
 modules/org.openbravo.client.widgets/src-db/database/sourcedata/AD_MODULE.xml  
                           |   2 +-
 
modules/org.openbravo.client.widgets/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
                  |   2 +-
 
modules/org.openbravo.financial.paymentreport/src-db/database/sourcedata/AD_MODULE.xml
                    |   2 +-
 
modules/org.openbravo.financial.paymentreport/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
         |   2 +-
 
modules/org.openbravo.reports.ordersawaitingdelivery/src-db/database/sourcedata/AD_MODULE.xml
             |   2 +-
 
modules/org.openbravo.reports.ordersawaitingdelivery/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
  |   2 +-
 
modules/org.openbravo.service.datasource/src-db/database/sourcedata/AD_MODULE.xml
                         |   2 +-
 
modules/org.openbravo.service.datasource/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
              |  10 +-
 
modules/org.openbravo.service.integration.google/src-db/database/sourcedata/AD_MODULE.xml
                 |   2 +-
 
modules/org.openbravo.service.integration.google/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
      |   4 +-
 
modules/org.openbravo.service.integration.openid/src-db/database/sourcedata/AD_MODULE.xml
                 |   2 +-
 
modules/org.openbravo.service.integration.openid/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
      |   2 +-
 modules/org.openbravo.service.json/src-db/database/sourcedata/AD_MODULE.xml    
                           |   2 +-
 
modules/org.openbravo.service.json/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
                    |   2 +-
 
modules/org.openbravo.userinterface.selector/src-db/database/sourcedata/AD_MODULE.xml
                     |   2 +-
 
modules/org.openbravo.userinterface.selector/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
          |  12 +-
 
modules/org.openbravo.userinterface.skin.250to300Comp/src-db/database/sourcedata/AD_MODULE.xml
            |   2 +-
 
modules/org.openbravo.userinterface.skin.250to300Comp/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
 |   2 +-
 
modules/org.openbravo.userinterface.smartclient/src-db/database/sourcedata/AD_MODULE.xml
                  |   2 +-
 
modules/org.openbravo.userinterface.smartclient/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
       |   6 +-
 
modules/org.openbravo.utility.cleanup.log/src-db/database/sourcedata/AD_MODULE.xml
                        |   2 +-
 
modules/org.openbravo.utility.cleanup.log/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
             |   2 +-
 modules/org.openbravo.v3.datasets/src-db/database/sourcedata/AD_MODULE.xml     
                           |   2 +-
 
modules/org.openbravo.v3.datasets/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
                     |   6 +-
 modules/org.openbravo.v3.framework/src-db/database/sourcedata/AD_MODULE.xml    
                           |   2 +-
 
modules/org.openbravo.v3.framework/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
                    |  24 +-
 modules/org.openbravo.v3/src-db/database/sourcedata/AD_MODULE.xml              
                           |   2 +-
 modules/org.openbravo.v3/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml   
                           |  22 +-
 src-db/database/model/excludeFilter.xml                                        
                           |   1 +
 src-db/database/model/functions/C_GET_NET_AMOUNT_FROM_GROSS.xml                
                           |   3 +-
 src-db/database/model/functions/C_GET_NET_PRICE_FROM_GROSS.xml                 
                           |   5 +-
 src-db/database/model/prescript-Oracle.sql                                     
                           |  35 +++
 src-db/database/model/prescript-PostgreSql.sql                                 
                           |  37 +++
 src-db/database/model/tables/FIN_PAYMENT.xml                                   
                           |   4 +
 src-db/database/sourcedata/AD_MODULE.xml                                       
                           |   4 +-
 src-test/src/org/openbravo/test/taxes/TaxesTest.java                           
                           |  24 ++
 src-test/src/org/openbravo/test/taxes/data/TaxesTestData161.java               
                           |  80 ++++++++
 src-test/src/org/openbravo/test/taxes/data/TaxesTestData162.java               
                           |  80 ++++++++
 src-test/src/org/openbravo/test/taxes/data/TaxesTestData163.java               
                           |  80 ++++++++
 src-test/src/org/openbravo/test/taxes/data/TaxesTestData164.java               
                           |  80 ++++++++
 src-test/src/org/openbravo/test/taxes/data/TaxesTestData165.java               
                           |  80 ++++++++
 src-test/src/org/openbravo/test/taxes/data/TaxesTestData166.java               
                           |  80 ++++++++
 src-test/src/org/openbravo/test/taxes/data/TaxesTestData167.java               
                           |  80 ++++++++
 src-test/src/org/openbravo/test/taxes/data/TaxesTestData168.java               
                           |  80 ++++++++
 src-test/src/org/openbravo/test/taxes/data/TaxesTestData169.java               
                           |  81 ++++++++
 src-test/src/org/openbravo/test/taxes/data/TaxesTestData170.java               
                           |  81 ++++++++
 src-test/src/org/openbravo/test/taxes/data/TaxesTestData171.java               
                           |  81 ++++++++
 src-test/src/org/openbravo/test/taxes/data/TaxesTestData172.java               
                           |  81 ++++++++
 src-test/src/org/openbravo/test/taxes/data/TaxesTestData173.java               
                           |  81 ++++++++
 src-test/src/org/openbravo/test/taxes/data/TaxesTestData174.java               
                           |  81 ++++++++
 src-test/src/org/openbravo/test/taxes/data/TaxesTestData175.java               
                           |  81 ++++++++
 src-test/src/org/openbravo/test/taxes/data/TaxesTestData176.java               
                           |  81 ++++++++
 src-test/src/org/openbravo/test/taxes/data/TaxesTestData177.java               
                           |  93 ++++++++++
 src-test/src/org/openbravo/test/taxes/data/TaxesTestData178.java               
                           |  93 ++++++++++
 src-test/src/org/openbravo/test/taxes/data/TaxesTestData179.java               
                           |  93 ++++++++++
 src-test/src/org/openbravo/test/taxes/data/TaxesTestData180.java               
                           |  93 ++++++++++
 src-test/src/org/openbravo/test/taxes/data/TaxesTestData181.java               
                           |  93 ++++++++++
 src-test/src/org/openbravo/test/taxes/data/TaxesTestData182.java               
                           |  93 ++++++++++
 src-test/src/org/openbravo/test/taxes/data/TaxesTestData183.java               
                           |  93 ++++++++++
 src-test/src/org/openbravo/test/taxes/data/TaxesTestData184.java               
                           |  93 ++++++++++
 src/org/openbravo/erpCommon/obps/ActivationKey.java                            
                           |   8 +-
 src/org/openbravo/erpCommon/security/Login.html                                
                           |   8 +-
 80 files changed, 2272 insertions(+), 128 deletions(-)

diffs (truncated from 3418 to 300 lines):

diff -r a62a7a94d7ee -r 41ab6f71c85b 
modules/org.openbravo.advpaymentmngt/src-db/database/sourcedata/AD_MODULE.xml
--- 
a/modules/org.openbravo.advpaymentmngt/src-db/database/sourcedata/AD_MODULE.xml 
    Wed Mar 15 14:08:12 2017 +0100
+++ 
b/modules/org.openbravo.advpaymentmngt/src-db/database/sourcedata/AD_MODULE.xml 
    Thu Mar 16 15:19:41 2017 +0000
@@ -6,7 +6,7 @@
 <!--A918E3331C404B889D69AA9BFAFB23AC-->  <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
 <!--A918E3331C404B889D69AA9BFAFB23AC-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--A918E3331C404B889D69AA9BFAFB23AC-->  <NAME><![CDATA[Advanced Payables and 
Receivables Mngmt]]></NAME>
-<!--A918E3331C404B889D69AA9BFAFB23AC-->  
<VERSION><![CDATA[3.0.31055]]></VERSION>
+<!--A918E3331C404B889D69AA9BFAFB23AC-->  
<VERSION><![CDATA[3.0.31696]]></VERSION>
 <!--A918E3331C404B889D69AA9BFAFB23AC-->  <DESCRIPTION><![CDATA[Managing your 
finances with an ERP does not have to be difficult. Enjoy a radically improved 
user experience that combines the power of an enterprise grade financial 
application with the simplicity and ease of a web 2.0 personal accounting 
service.]]></DESCRIPTION>
 <!--A918E3331C404B889D69AA9BFAFB23AC-->  <HELP><![CDATA[Advanced Payables and 
Receivables Management simplifies and automates the business processes around 
the management of financial accounts, from the receipt and issue of payment, to 
the reconciliation of those events with bank statements.
 If you would like to help shape this module you are welcome to take part in 
the forum discussions or register feature requests or issues in the 
corresponding (Forum and Bug Tracking) sections in the Advanced Payables and 
Receivable project in the OB Forge.]]></HELP>
diff -r a62a7a94d7ee -r 41ab6f71c85b 
modules/org.openbravo.advpaymentmngt/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
--- 
a/modules/org.openbravo.advpaymentmngt/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
  Wed Mar 15 14:08:12 2017 +0100
+++ 
b/modules/org.openbravo.advpaymentmngt/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
  Thu Mar 16 15:19:41 2017 +0000
@@ -7,7 +7,7 @@
 <!--89326AE95DAD449D85DFAB2C5B1C6683-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--89326AE95DAD449D85DFAB2C5B1C6683-->  
<AD_MODULE_ID><![CDATA[A918E3331C404B889D69AA9BFAFB23AC]]></AD_MODULE_ID>
 <!--89326AE95DAD449D85DFAB2C5B1C6683-->  
<AD_DEPENDENT_MODULE_ID><![CDATA[5EB4F15C80684ACA904756BDC12ADBE5]]></AD_DEPENDENT_MODULE_ID>
-<!--89326AE95DAD449D85DFAB2C5B1C6683-->  
<STARTVERSION><![CDATA[2.1.31055]]></STARTVERSION>
+<!--89326AE95DAD449D85DFAB2C5B1C6683-->  
<STARTVERSION><![CDATA[2.1.31696]]></STARTVERSION>
 <!--89326AE95DAD449D85DFAB2C5B1C6683-->  <ISINCLUDED><![CDATA[N]]></ISINCLUDED>
 <!--89326AE95DAD449D85DFAB2C5B1C6683-->  <DEPENDANT_MODULE_NAME><![CDATA[User 
Interface Selector]]></DEPENDANT_MODULE_NAME>
 <!--89326AE95DAD449D85DFAB2C5B1C6683-->  
<DEPENDENCY_ENFORCEMENT><![CDATA[MAJOR]]></DEPENDENCY_ENFORCEMENT>
@@ -21,7 +21,7 @@
 <!--B97FC854C6DD41E692161585645A900F-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--B97FC854C6DD41E692161585645A900F-->  
<AD_MODULE_ID><![CDATA[A918E3331C404B889D69AA9BFAFB23AC]]></AD_MODULE_ID>
 <!--B97FC854C6DD41E692161585645A900F-->  
<AD_DEPENDENT_MODULE_ID><![CDATA[0]]></AD_DEPENDENT_MODULE_ID>
-<!--B97FC854C6DD41E692161585645A900F-->  
<STARTVERSION><![CDATA[3.0.31055]]></STARTVERSION>
+<!--B97FC854C6DD41E692161585645A900F-->  
<STARTVERSION><![CDATA[3.0.31696]]></STARTVERSION>
 <!--B97FC854C6DD41E692161585645A900F-->  <ISINCLUDED><![CDATA[N]]></ISINCLUDED>
 <!--B97FC854C6DD41E692161585645A900F-->  
<DEPENDANT_MODULE_NAME><![CDATA[core]]></DEPENDANT_MODULE_NAME>
 <!--B97FC854C6DD41E692161585645A900F-->  
<DEPENDENCY_ENFORCEMENT><![CDATA[MAJOR]]></DEPENDENCY_ENFORCEMENT>
diff -r a62a7a94d7ee -r 41ab6f71c85b 
modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/dao/AdvPaymentMngtDao.java
--- 
a/modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/dao/AdvPaymentMngtDao.java
  Wed Mar 15 14:08:12 2017 +0100
+++ 
b/modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/dao/AdvPaymentMngtDao.java
  Thu Mar 16 15:19:41 2017 +0000
@@ -11,7 +11,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) 2010-2016 Openbravo SLU
+ * All portions are Copyright (C) 2010-2017 Openbravo SLU
  * All Rights Reserved.
  * Contributor(s):  Enterprise Intelligence Systems (http://www.eintel.com.au).
  *************************************************************************
@@ -23,11 +23,15 @@
 import java.text.SimpleDateFormat;
 import java.util.ArrayList;
 import java.util.Date;
+import java.util.HashMap;
 import java.util.Iterator;
 import java.util.List;
+import java.util.Map;
 import java.util.Set;
 
 import org.apache.commons.lang.StringUtils;
+import org.hibernate.Query;
+import org.hibernate.Session;
 import org.hibernate.criterion.Criterion;
 import org.hibernate.criterion.DetachedCriteria;
 import org.hibernate.criterion.Projections;
@@ -1970,24 +1974,41 @@
 
     try {
       OBContext.setAdminMode(true);
-      OBCriteria<FIN_Payment> obcPayment = 
OBDal.getInstance().createCriteria(FIN_Payment.class);
-      obcPayment.add(Restrictions.eq(FIN_Payment.PROPERTY_BUSINESSPARTNER, 
bp));
-      obcPayment.add(Restrictions.eq(FIN_Payment.PROPERTY_RECEIPT, isReceipt));
-      obcPayment.add(Restrictions.ne(FIN_Payment.PROPERTY_GENERATEDCREDIT, 
BigDecimal.ZERO));
-      
obcPayment.add(Restrictions.neProperty(FIN_Payment.PROPERTY_GENERATEDCREDIT,
-          FIN_Payment.PROPERTY_USEDCREDIT));
+
       final Organization legalEntity = FIN_Utility.getLegalEntityOrg(org);
       Set<String> orgIds = 
OBContext.getOBContext().getOrganizationStructureProvider()
           .getChildTree(legalEntity.getId(), true);
-      obcPayment.add(Restrictions.in("organization.id", orgIds));
+
+      final Map<String, Object> params = new HashMap<String, Object>();
+
+      final StringBuffer hql = new StringBuffer("select p ");
+      hql.append(" from " + FIN_Payment.ENTITY_NAME + " as p ");
+      hql.append(" where p." + FIN_Payment.PROPERTY_BUSINESSPARTNER + ".id = 
:bpartnerId ");
+      hql.append("  and p." + FIN_Payment.PROPERTY_RECEIPT + " = :isReceipt ");
+      hql.append("  and p." + FIN_Payment.PROPERTY_ORGANIZATION + ".id in 
(:orgIds) ");
+      hql.append("  and obequals(p." + FIN_Payment.PROPERTY_GENERATEDCREDIT + 
", p."
+          + FIN_Payment.PROPERTY_USEDCREDIT + ") = 'N' ");
+      hql.append("  and p." + FIN_Payment.PROPERTY_GENERATEDCREDIT + " <> 0 ");
       if (currency != null) {
-        obcPayment.add(Restrictions.eq(FIN_Payment.PROPERTY_CURRENCY, 
currency));
+        hql.append(" and p." + FIN_Payment.PROPERTY_CURRENCY + ".id = 
:currencyId");
+        params.put("currencyId", currency.getId());
       }
-      obcPayment.addOrderBy(FIN_Payment.PROPERTY_PAYMENTDATE, true);
-      obcPayment.addOrderBy(FIN_Payment.PROPERTY_DOCUMENTNO, true);
 
-      List<FIN_Payment> paymentList = new ArrayList<FIN_Payment>();
-      for (FIN_Payment fp : obcPayment.list()) {
+      hql.append(" order by p." + FIN_Payment.PROPERTY_PAYMENTDATE + " asc, ");
+      hql.append(" p." + FIN_Payment.PROPERTY_DOCUMENTNO + " asc ");
+
+      params.put("bpartnerId", bp.getId());
+      params.put("isReceipt", isReceipt);
+      params.put("orgIds", orgIds);
+
+      final Session session = OBDal.getInstance().getSession();
+      final Query query = session.createQuery(hql.toString());
+      query.setProperties(params);
+
+      @SuppressWarnings("unchecked")
+      final List<FIN_Payment> queryList = query.list();
+      final List<FIN_Payment> paymentList = new ArrayList<FIN_Payment>();
+      for (FIN_Payment fp : queryList) {
         if ((FIN_Utility.seqnumberpaymentstatus(fp.getStatus())) >= 
(FIN_Utility
             .seqnumberpaymentstatus(FIN_Utility.invoicePaymentStatus(fp)))) {
           paymentList.add(fp);
diff -r a62a7a94d7ee -r 41ab6f71c85b 
modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/process/FIN_TransactionProcess.java
--- 
a/modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/process/FIN_TransactionProcess.java
 Wed Mar 15 14:08:12 2017 +0100
+++ 
b/modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/process/FIN_TransactionProcess.java
 Thu Mar 16 15:19:41 2017 +0000
@@ -11,7 +11,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) 2010-2017 Openbravo SLU
+ * All portions are Copyright (C) 2010-2016 Openbravo SLU
  * All Rights Reserved.
  * Contributor(s):  ______________________________________.
  *************************************************************************
@@ -22,9 +22,6 @@
 import java.util.List;
 
 import org.apache.commons.lang.StringUtils;
-import org.hibernate.LockOptions;
-import org.hibernate.Query;
-import org.hibernate.Session;
 import org.hibernate.criterion.Restrictions;
 import org.openbravo.advpaymentmngt.APRM_FinaccTransactionV;
 import org.openbravo.advpaymentmngt.dao.AdvPaymentMngtDao;
@@ -116,7 +113,7 @@
           throw new OBException(msg);
         }
 
-        final FIN_FinancialAccount financialAccount = 
lockFinAccount(transaction.getAccount());
+        final FIN_FinancialAccount financialAccount = transaction.getAccount();
         
financialAccount.setCurrentBalance(financialAccount.getCurrentBalance().add(
             
transaction.getDepositAmount().subtract(transaction.getPaymentAmount())));
         transaction.setProcessed(true);
@@ -221,7 +218,7 @@
           OBContext.restorePreviousMode();
         }
         transaction.setProcessed(false);
-        final FIN_FinancialAccount financialAccount = 
lockFinAccount(transaction.getAccount());
+        final FIN_FinancialAccount financialAccount = transaction.getAccount();
         financialAccount.setCurrentBalance(financialAccount.getCurrentBalance()
             
.subtract(transaction.getDepositAmount()).add(transaction.getPaymentAmount()));
         OBDal.getInstance().save(financialAccount);
@@ -369,15 +366,4 @@
     return confirmation;
   }
 
-  private static FIN_FinancialAccount lockFinAccount(FIN_FinancialAccount 
account) {
-    StringBuilder queryStr = new StringBuilder("select a from 
FIN_Financial_Account a where id = :id");
-    final Session session = OBDal.getInstance().getSession();
-    final Query query = session.createQuery(queryStr.toString());
-    query.setParameter("id", account.getId());
-    query.setMaxResults(1);
-    query.setLockOptions(LockOptions.UPGRADE);
-    OBDal.getInstance().getSession().evict(account);
-    return (FIN_FinancialAccount) query.uniqueResult();
-  }
-
 }
diff -r a62a7a94d7ee -r 41ab6f71c85b 
modules/org.openbravo.apachejdbcconnectionpool/src-db/database/sourcedata/AD_MODULE.xml
--- 
a/modules/org.openbravo.apachejdbcconnectionpool/src-db/database/sourcedata/AD_MODULE.xml
   Wed Mar 15 14:08:12 2017 +0100
+++ 
b/modules/org.openbravo.apachejdbcconnectionpool/src-db/database/sourcedata/AD_MODULE.xml
   Thu Mar 16 15:19:41 2017 +0000
@@ -6,7 +6,7 @@
 <!--8A098711BB324335A19833286BDB093D-->  <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
 <!--8A098711BB324335A19833286BDB093D-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--8A098711BB324335A19833286BDB093D-->  <NAME><![CDATA[Apache External 
Connection Pool]]></NAME>
-<!--8A098711BB324335A19833286BDB093D-->  
<VERSION><![CDATA[1.0.31055]]></VERSION>
+<!--8A098711BB324335A19833286BDB093D-->  
<VERSION><![CDATA[1.0.31696]]></VERSION>
 <!--8A098711BB324335A19833286BDB093D-->  <DESCRIPTION><![CDATA[Apache External 
Connection Pool]]></DESCRIPTION>
 <!--8A098711BB324335A19833286BDB093D-->  <HELP><![CDATA[This module implements 
the Apache JDBC Connection Pool 
(http://wiki.openbravo.com/wiki/Modules:Apache_JDBC_Connection_Pool).]]></HELP>
 <!--8A098711BB324335A19833286BDB093D-->  <TYPE><![CDATA[M]]></TYPE>
diff -r a62a7a94d7ee -r 41ab6f71c85b 
modules/org.openbravo.apachejdbcconnectionpool/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
--- 
a/modules/org.openbravo.apachejdbcconnectionpool/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
        Wed Mar 15 14:08:12 2017 +0100
+++ 
b/modules/org.openbravo.apachejdbcconnectionpool/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
        Thu Mar 16 15:19:41 2017 +0000
@@ -7,7 +7,7 @@
 <!--1467C397BC5F4999A5606F39CD6FF8A4-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--1467C397BC5F4999A5606F39CD6FF8A4-->  
<AD_MODULE_ID><![CDATA[8A098711BB324335A19833286BDB093D]]></AD_MODULE_ID>
 <!--1467C397BC5F4999A5606F39CD6FF8A4-->  
<AD_DEPENDENT_MODULE_ID><![CDATA[7E48CDD73B7E493A8BED4F7253E7C989]]></AD_DEPENDENT_MODULE_ID>
-<!--1467C397BC5F4999A5606F39CD6FF8A4-->  
<STARTVERSION><![CDATA[2.1.31055]]></STARTVERSION>
+<!--1467C397BC5F4999A5606F39CD6FF8A4-->  
<STARTVERSION><![CDATA[2.1.31696]]></STARTVERSION>
 <!--1467C397BC5F4999A5606F39CD6FF8A4-->  <ISINCLUDED><![CDATA[N]]></ISINCLUDED>
 <!--1467C397BC5F4999A5606F39CD6FF8A4-->  
<DEPENDANT_MODULE_NAME><![CDATA[Openbravo 3.0 
Framework]]></DEPENDANT_MODULE_NAME>
 <!--1467C397BC5F4999A5606F39CD6FF8A4-->  
<DEPENDENCY_ENFORCEMENT><![CDATA[MAJOR]]></DEPENDENCY_ENFORCEMENT>
diff -r a62a7a94d7ee -r 41ab6f71c85b 
modules/org.openbravo.base.weld/src-db/database/sourcedata/AD_MODULE.xml
--- a/modules/org.openbravo.base.weld/src-db/database/sourcedata/AD_MODULE.xml  
Wed Mar 15 14:08:12 2017 +0100
+++ b/modules/org.openbravo.base.weld/src-db/database/sourcedata/AD_MODULE.xml  
Thu Mar 16 15:19:41 2017 +0000
@@ -6,7 +6,7 @@
 <!--C70732EA90A14EC0916078B85CC33D2D-->  <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
 <!--C70732EA90A14EC0916078B85CC33D2D-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--C70732EA90A14EC0916078B85CC33D2D-->  <NAME><![CDATA[JBoss Weld]]></NAME>
-<!--C70732EA90A14EC0916078B85CC33D2D-->  
<VERSION><![CDATA[1.1.31055]]></VERSION>
+<!--C70732EA90A14EC0916078B85CC33D2D-->  
<VERSION><![CDATA[1.1.31696]]></VERSION>
 <!--C70732EA90A14EC0916078B85CC33D2D-->  <DESCRIPTION><![CDATA[JBoss 
Weld]]></DESCRIPTION>
 <!--C70732EA90A14EC0916078B85CC33D2D-->  <HELP><![CDATA[Provides the JBoss 
Weld framework: Java Contexts and Dependency Injection for the Java EE platform 
(CDI). For more information see http://seamframework.org/Weld]]></HELP>
 <!--C70732EA90A14EC0916078B85CC33D2D-->  
<URL><![CDATA[http://forge.openbravo.com/projects/weld]]></URL>
diff -r a62a7a94d7ee -r 41ab6f71c85b 
modules/org.openbravo.base.weld/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
--- 
a/modules/org.openbravo.base.weld/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
       Wed Mar 15 14:08:12 2017 +0100
+++ 
b/modules/org.openbravo.base.weld/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
       Thu Mar 16 15:19:41 2017 +0000
@@ -7,7 +7,7 @@
 <!--8BDE81545C1A43EAAC4BA3C5ED754DC8-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--8BDE81545C1A43EAAC4BA3C5ED754DC8-->  
<AD_MODULE_ID><![CDATA[C70732EA90A14EC0916078B85CC33D2D]]></AD_MODULE_ID>
 <!--8BDE81545C1A43EAAC4BA3C5ED754DC8-->  
<AD_DEPENDENT_MODULE_ID><![CDATA[0]]></AD_DEPENDENT_MODULE_ID>
-<!--8BDE81545C1A43EAAC4BA3C5ED754DC8-->  
<STARTVERSION><![CDATA[3.0.31055]]></STARTVERSION>
+<!--8BDE81545C1A43EAAC4BA3C5ED754DC8-->  
<STARTVERSION><![CDATA[3.0.31696]]></STARTVERSION>
 <!--8BDE81545C1A43EAAC4BA3C5ED754DC8-->  <ISINCLUDED><![CDATA[N]]></ISINCLUDED>
 <!--8BDE81545C1A43EAAC4BA3C5ED754DC8-->  
<DEPENDANT_MODULE_NAME><![CDATA[Core]]></DEPENDANT_MODULE_NAME>
 <!--8BDE81545C1A43EAAC4BA3C5ED754DC8-->  
<DEPENDENCY_ENFORCEMENT><![CDATA[MAJOR]]></DEPENDENCY_ENFORCEMENT>
diff -r a62a7a94d7ee -r 41ab6f71c85b 
modules/org.openbravo.client.application/src-db/database/sourcedata/AD_MODULE.xml
--- 
a/modules/org.openbravo.client.application/src-db/database/sourcedata/AD_MODULE.xml
 Wed Mar 15 14:08:12 2017 +0100
+++ 
b/modules/org.openbravo.client.application/src-db/database/sourcedata/AD_MODULE.xml
 Thu Mar 16 15:19:41 2017 +0000
@@ -6,7 +6,7 @@
 <!--9BA0836A3CD74EE4AB48753A47211BCC-->  <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
 <!--9BA0836A3CD74EE4AB48753A47211BCC-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--9BA0836A3CD74EE4AB48753A47211BCC-->  <NAME><![CDATA[User Interface 
Application]]></NAME>
-<!--9BA0836A3CD74EE4AB48753A47211BCC-->  
<VERSION><![CDATA[2.1.31055]]></VERSION>
+<!--9BA0836A3CD74EE4AB48753A47211BCC-->  
<VERSION><![CDATA[2.1.31696]]></VERSION>
 <!--9BA0836A3CD74EE4AB48753A47211BCC-->  <DESCRIPTION><![CDATA[Provides the 
main application components for the openbravo user interface]]></DESCRIPTION>
 <!--9BA0836A3CD74EE4AB48753A47211BCC-->  <HELP><![CDATA[Provides the main 
application components for the openbravo user interface. The main layout 
incorporates a navigation bar and a main view area.]]></HELP>
 <!--9BA0836A3CD74EE4AB48753A47211BCC-->  
<URL><![CDATA[http://forge.openbravo.com/projects/clientapplication]]></URL>
diff -r a62a7a94d7ee -r 41ab6f71c85b 
modules/org.openbravo.client.application/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
--- 
a/modules/org.openbravo.client.application/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
      Wed Mar 15 14:08:12 2017 +0100
+++ 
b/modules/org.openbravo.client.application/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
      Thu Mar 16 15:19:41 2017 +0000
@@ -7,7 +7,7 @@
 <!--15D7CE8D95D043189162DBABA54A1F61-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--15D7CE8D95D043189162DBABA54A1F61-->  
<AD_MODULE_ID><![CDATA[9BA0836A3CD74EE4AB48753A47211BCC]]></AD_MODULE_ID>
 <!--15D7CE8D95D043189162DBABA54A1F61-->  
<AD_DEPENDENT_MODULE_ID><![CDATA[A44B9BA75C354D8FB2E3F7D6EB6BFDC4]]></AD_DEPENDENT_MODULE_ID>
-<!--15D7CE8D95D043189162DBABA54A1F61-->  
<STARTVERSION><![CDATA[2.1.31055]]></STARTVERSION>
+<!--15D7CE8D95D043189162DBABA54A1F61-->  
<STARTVERSION><![CDATA[2.1.31696]]></STARTVERSION>
 <!--15D7CE8D95D043189162DBABA54A1F61-->  <ISINCLUDED><![CDATA[N]]></ISINCLUDED>
 <!--15D7CE8D95D043189162DBABA54A1F61-->  <DEPENDANT_MODULE_NAME><![CDATA[JSON 
Datasource]]></DEPENDANT_MODULE_NAME>
 <!--15D7CE8D95D043189162DBABA54A1F61-->  
<DEPENDENCY_ENFORCEMENT><![CDATA[MAJOR]]></DEPENDENCY_ENFORCEMENT>
@@ -21,7 +21,7 @@
 <!--60A170212F36499D83B8AD38D01F46B3-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--60A170212F36499D83B8AD38D01F46B3-->  
<AD_MODULE_ID><![CDATA[9BA0836A3CD74EE4AB48753A47211BCC]]></AD_MODULE_ID>
 <!--60A170212F36499D83B8AD38D01F46B3-->  
<AD_DEPENDENT_MODULE_ID><![CDATA[4B828F4D03264080AA1D2057B13F613C]]></AD_DEPENDENT_MODULE_ID>
-<!--60A170212F36499D83B8AD38D01F46B3-->  
<STARTVERSION><![CDATA[2.1.31055]]></STARTVERSION>
+<!--60A170212F36499D83B8AD38D01F46B3-->  
<STARTVERSION><![CDATA[2.1.31696]]></STARTVERSION>
 <!--60A170212F36499D83B8AD38D01F46B3-->  <ISINCLUDED><![CDATA[N]]></ISINCLUDED>
 <!--60A170212F36499D83B8AD38D01F46B3-->  <DEPENDANT_MODULE_NAME><![CDATA[User 
Interface Client Kernel]]></DEPENDANT_MODULE_NAME>
 <!--60A170212F36499D83B8AD38D01F46B3-->  
<DEPENDENCY_ENFORCEMENT><![CDATA[MAJOR]]></DEPENDENCY_ENFORCEMENT>
@@ -35,7 +35,7 @@
 <!--824D60CB352E4099B1D8C903CA139DAE-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--824D60CB352E4099B1D8C903CA139DAE-->  
<AD_MODULE_ID><![CDATA[9BA0836A3CD74EE4AB48753A47211BCC]]></AD_MODULE_ID>
 <!--824D60CB352E4099B1D8C903CA139DAE-->  
<AD_DEPENDENT_MODULE_ID><![CDATA[0]]></AD_DEPENDENT_MODULE_ID>
-<!--824D60CB352E4099B1D8C903CA139DAE-->  
<STARTVERSION><![CDATA[3.0.31055]]></STARTVERSION>
+<!--824D60CB352E4099B1D8C903CA139DAE-->  
<STARTVERSION><![CDATA[3.0.31696]]></STARTVERSION>
 <!--824D60CB352E4099B1D8C903CA139DAE-->  <ISINCLUDED><![CDATA[N]]></ISINCLUDED>
 <!--824D60CB352E4099B1D8C903CA139DAE-->  
<DEPENDANT_MODULE_NAME><![CDATA[core]]></DEPENDANT_MODULE_NAME>
 <!--824D60CB352E4099B1D8C903CA139DAE-->  
<DEPENDENCY_ENFORCEMENT><![CDATA[MAJOR]]></DEPENDENCY_ENFORCEMENT>
@@ -49,7 +49,7 @@
 <!--E8FD820AFE3D4FE08C02FC47769026AD-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--E8FD820AFE3D4FE08C02FC47769026AD-->  
<AD_MODULE_ID><![CDATA[9BA0836A3CD74EE4AB48753A47211BCC]]></AD_MODULE_ID>
 <!--E8FD820AFE3D4FE08C02FC47769026AD-->  
<AD_DEPENDENT_MODULE_ID><![CDATA[EC356CEE3D46416CA1EBEEB9AB82EDB9]]></AD_DEPENDENT_MODULE_ID>
-<!--E8FD820AFE3D4FE08C02FC47769026AD-->  
<STARTVERSION><![CDATA[8.1.31055]]></STARTVERSION>
+<!--E8FD820AFE3D4FE08C02FC47769026AD-->  
<STARTVERSION><![CDATA[8.1.31696]]></STARTVERSION>
 <!--E8FD820AFE3D4FE08C02FC47769026AD-->  <ISINCLUDED><![CDATA[N]]></ISINCLUDED>
 <!--E8FD820AFE3D4FE08C02FC47769026AD-->  
<DEPENDANT_MODULE_NAME><![CDATA[Smartclient]]></DEPENDANT_MODULE_NAME>
 <!--E8FD820AFE3D4FE08C02FC47769026AD-->  
<DEPENDENCY_ENFORCEMENT><![CDATA[MAJOR]]></DEPENDENCY_ENFORCEMENT>
diff -r a62a7a94d7ee -r 41ab6f71c85b 
modules/org.openbravo.client.htmlwidget/src-db/database/sourcedata/AD_MODULE.xml
--- 
a/modules/org.openbravo.client.htmlwidget/src-db/database/sourcedata/AD_MODULE.xml
  Wed Mar 15 14:08:12 2017 +0100
+++ 
b/modules/org.openbravo.client.htmlwidget/src-db/database/sourcedata/AD_MODULE.xml
  Thu Mar 16 15:19:41 2017 +0000
@@ -6,7 +6,7 @@
 <!--D393BE6F22BB44B7B728259B34FC795A-->  <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
 <!--D393BE6F22BB44B7B728259B34FC795A-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--D393BE6F22BB44B7B728259B34FC795A-->  <NAME><![CDATA[HTML Widget]]></NAME>
-<!--D393BE6F22BB44B7B728259B34FC795A-->  
<VERSION><![CDATA[1.0.31055]]></VERSION>
+<!--D393BE6F22BB44B7B728259B34FC795A-->  
<VERSION><![CDATA[1.0.31696]]></VERSION>
 <!--D393BE6F22BB44B7B728259B34FC795A-->  <DESCRIPTION><![CDATA[Provides the 
HTML Widget superclass that allows to create widget classes that embed the html 
code.]]></DESCRIPTION>
 <!--D393BE6F22BB44B7B728259B34FC795A-->  <HELP><![CDATA[With this module you 
can define your own widget classes just setting up your own html code or the 
html code provided by third parties.]]></HELP>
 <!--D393BE6F22BB44B7B728259B34FC795A-->  
<URL><![CDATA[http://forge.openbravo.com/projects/htmlwidget]]></URL>
diff -r a62a7a94d7ee -r 41ab6f71c85b 
modules/org.openbravo.client.htmlwidget/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
--- 
a/modules/org.openbravo.client.htmlwidget/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
       Wed Mar 15 14:08:12 2017 +0100
+++ 
b/modules/org.openbravo.client.htmlwidget/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
       Thu Mar 16 15:19:41 2017 +0000
@@ -7,7 +7,7 @@
 <!--DCE798FBC5B648F7A3C81A6941720A57-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--DCE798FBC5B648F7A3C81A6941720A57-->  
<AD_MODULE_ID><![CDATA[D393BE6F22BB44B7B728259B34FC795A]]></AD_MODULE_ID>
 <!--DCE798FBC5B648F7A3C81A6941720A57-->  
<AD_DEPENDENT_MODULE_ID><![CDATA[2758CD25B2704AF6BBAD10365FC82C06]]></AD_DEPENDENT_MODULE_ID>
-<!--DCE798FBC5B648F7A3C81A6941720A57-->  
<STARTVERSION><![CDATA[2.1.31055]]></STARTVERSION>
+<!--DCE798FBC5B648F7A3C81A6941720A57-->  
<STARTVERSION><![CDATA[2.1.31696]]></STARTVERSION>
 <!--DCE798FBC5B648F7A3C81A6941720A57-->  <ISINCLUDED><![CDATA[N]]></ISINCLUDED>
 <!--DCE798FBC5B648F7A3C81A6941720A57-->  <DEPENDANT_MODULE_NAME><![CDATA[My 
Openbravo Tab]]></DEPENDANT_MODULE_NAME>
 <!--DCE798FBC5B648F7A3C81A6941720A57-->  
<DEPENDENCY_ENFORCEMENT><![CDATA[MAJOR]]></DEPENDENCY_ENFORCEMENT>
diff -r a62a7a94d7ee -r 41ab6f71c85b 
modules/org.openbravo.client.kernel/src-db/database/sourcedata/AD_MODULE.xml
--- 
a/modules/org.openbravo.client.kernel/src-db/database/sourcedata/AD_MODULE.xml  
    Wed Mar 15 14:08:12 2017 +0100
+++ 
b/modules/org.openbravo.client.kernel/src-db/database/sourcedata/AD_MODULE.xml  
    Thu Mar 16 15:19:41 2017 +0000
@@ -6,7 +6,7 @@
 <!--4B828F4D03264080AA1D2057B13F613C-->  <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
 <!--4B828F4D03264080AA1D2057B13F613C-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Openbravo-commits mailing list
Openbravo-commits@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/openbravo-commits

Reply via email to