details:   https://code.openbravo.com/erp/devel/pi/rev/69c0b3b3b14a
changeset: 23940:69c0b3b3b14a
user:      Sandra Huguet <sandra.huguet <at> openbravo.com>
date:      Mon Jun 30 18:20:18 2014 +0200
summary:   Fixed bug 26969: "There is a difference" field is not work as 
expected

diffstat:

 
modules/org.openbravo.advpaymentmngt/web/org.openbravo.advpaymentmngt/js/ob-aprm-addPayment.js
 |  18 +++++++--
 1 files changed, 13 insertions(+), 5 deletions(-)

diffs (29 lines):

diff -r 56087fa8788d -r 69c0b3b3b14a 
modules/org.openbravo.advpaymentmngt/web/org.openbravo.advpaymentmngt/js/ob-aprm-addPayment.js
--- 
a/modules/org.openbravo.advpaymentmngt/web/org.openbravo.advpaymentmngt/js/ob-aprm-addPayment.js
    Mon Jun 30 18:29:05 2014 +0200
+++ 
b/modules/org.openbravo.advpaymentmngt/web/org.openbravo.advpaymentmngt/js/ob-aprm-addPayment.js
    Mon Jun 30 18:20:18 2014 +0200
@@ -382,12 +382,20 @@
       receivedFrom = form.getItem('received_from').getValue() || '',
       totalGLItems = new 
BigDecimal(String(form.getItem('amount_gl_items').getValue() || 0)),
       diffAmt = actualPayment.add(credit).subtract(total),
-      expectedDiffAmt = 
expectedPayment.add(credit).subtract(total).add(totalGLItems);
-  differenceItem.setValue(Number(diffAmt.toString()));
-  if (expectedDiffAmt.signum() === 0) {
-    expectedDifferenceItem.setValue(Number(diffAmt.toString()));
+      amount = total;
+
+  if ((actualPayment.signum() === 0) || 
(actualPayment.compareTo(expectedPayment) > 0)) {
+    amount = actualPayment;
+  }
+  if (credit.signum() !== 0) {
+    amount = amount.add(credit);
+  }
+  if (expectedPayment.compareTo(total.abs()) > 0) {
+    differenceItem.setValue(Number(expectedPayment.subtract(total)));
+  } else if (amount.compareTo(total) > 0) {
+    differenceItem.setValue(Number(amount.subtract(total)));
   } else {
-    expectedDifferenceItem.setValue(Number(expectedDiffAmt.toString()));
+    differenceItem.setValue(Number('0'));
   }
   if (diffAmt.signum() !== 0) {
     OB.APRM.AddPayment.updateDifferenceActions(form);

------------------------------------------------------------------------------
Open source business process management suite built on Java and Eclipse
Turn processes into business applications with Bonita BPM Community Edition
Quickly connect people, data, and systems into organized workflows
Winner of BOSSIE, CODIE, OW2 and Gartner awards
http://p.sf.net/sfu/Bonitasoft
_______________________________________________
Openbravo-commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openbravo-commits

Reply via email to