details:   https://code.openbravo.com/erp/devel/pi/rev/ddfd1c8e6194
changeset: 19789:ddfd1c8e6194
user:      Ioritz Cia <ioritz.cia <at> openbravo.com>
date:      Fri Feb 22 09:21:08 2013 +0100
summary:   Fixes issue 23055: Error obtained when trying to Void a payment.

diffstat:

 
modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/process/FIN_PaymentProcess.java
 |  10 ++++++++++
 1 files changed, 10 insertions(+), 0 deletions(-)

diffs (41 lines):

diff -r c6c76a1ab1c7 -r ddfd1c8e6194 
modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/process/FIN_PaymentProcess.java
--- 
a/modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/process/FIN_PaymentProcess.java
     Fri Feb 22 19:25:03 2013 +0100
+++ 
b/modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/process/FIN_PaymentProcess.java
     Fri Feb 22 09:21:08 2013 +0100
@@ -928,6 +928,9 @@
                   for (final FIN_PaymentScheduleDetail invScheDetail : 
paymentScheduleDetail
                       .getInvoicePaymentSchedule()
                       
.getFINPaymentScheduleDetailInvoicePaymentScheduleList()) {
+                    if (invScheDetail.isCanceled()) {
+                      continue;
+                    }
                     if (invScheDetail.getPaymentDetails() == null) {
                       outStandingAmt = 
outStandingAmt.add(invScheDetail.getAmount()).add(
                           invScheDetail.getWriteoffAmount());
@@ -946,6 +949,8 @@
                         
.getNewPaymentScheduleDetail(payment.getOrganization(), outStandingAmt);
                     
mergedScheduleDetail.setInvoicePaymentSchedule(paymentScheduleDetail
                         .getInvoicePaymentSchedule());
+                    
mergedScheduleDetail.setOrderPaymentSchedule(paymentScheduleDetail
+                        .getOrderPaymentSchedule());
                     OBDal.getInstance().save(mergedScheduleDetail);
                   }
                 } else if (paymentScheduleDetail.getOrderPaymentSchedule() != 
null) {
@@ -953,6 +958,9 @@
                   for (final FIN_PaymentScheduleDetail ordScheDetail : 
paymentScheduleDetail
                       .getOrderPaymentSchedule()
                       .getFINPaymentScheduleDetailOrderPaymentScheduleList()) {
+                    if (ordScheDetail.isCanceled()) {
+                      continue;
+                    }
                     if (ordScheDetail.getPaymentDetails() == null) {
                       outStandingAmt = 
outStandingAmt.add(ordScheDetail.getAmount()).add(
                           ordScheDetail.getWriteoffAmount());
@@ -998,6 +1006,8 @@
                 }
                 OBDal.getInstance().remove(removedPD);
               }
+              OBDal.getInstance().flush();
+              removedPDS.clear();
             }
             if (payment.getGeneratedCredit().compareTo(BigDecimal.ZERO) == 0
                 && payment.getUsedCredit().compareTo(BigDecimal.ZERO) == 1) {

------------------------------------------------------------------------------
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
http://p.sf.net/sfu/appdyn_d2d_feb
_______________________________________________
Openbravo-commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openbravo-commits

Reply via email to