details:   https://code.openbravo.com/erp/devel/pi/rev/8add402536e8
changeset: 20195:8add402536e8
user:      Eduardo Argal Guibert <eduardo.argal <at> openbravo.com>
date:      Wed Apr 24 11:48:55 2013 +0200
summary:   Adds matching logic for Standard matching algorithm when using 
GLItems

diffstat:

 
modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/algorithm/StandardMatchingAlgorithm.java
 |  18 +++++++++-
 1 files changed, 17 insertions(+), 1 deletions(-)

diffs (35 lines):

diff -r b1183f88c4a6 -r 8add402536e8 
modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/algorithm/StandardMatchingAlgorithm.java
--- 
a/modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/algorithm/StandardMatchingAlgorithm.java
    Tue Apr 23 22:28:03 2013 +0530
+++ 
b/modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/algorithm/StandardMatchingAlgorithm.java
    Wed Apr 24 11:48:55 2013 +0200
@@ -19,6 +19,7 @@
 
 package org.openbravo.advpaymentmngt.algorithm;
 
+import java.util.ArrayList;
 import java.util.Date;
 import java.util.List;
 
@@ -41,7 +42,22 @@
     Date transactionDate = (algorithm.isMatchtransactiondate()) ? 
line.getTransactionDate() : null;
     String reference = (algorithm.isMatchreference()) ? line.getReferenceNo() 
: "";
 
-    List<FIN_FinaccTransaction> transactions;
+    List<FIN_FinaccTransaction> transactions = new 
ArrayList<FIN_FinaccTransaction>();
+    if (line.getGLItem() != null) {
+      transactions = 
MatchTransactionDao.getMatchingGLItemTransaction(line.getBankStatement()
+          .getAccount().getId(), line.getGLItem(), line.getTransactionDate(),
+          (line.getCramount().subtract(line.getDramount())), excluded);
+      if (transactions.isEmpty()) {
+        transactions = 
MatchTransactionDao.getMatchingGLItemTransaction(line.getBankStatement()
+            .getAccount().getId(), line.getGLItem(), null,
+            (line.getCramount().subtract(line.getDramount())), excluded);
+        if (!transactions.isEmpty()) {
+          return new FIN_MatchedTransaction(transactions.get(0), 
FIN_MatchedTransaction.WEAK);
+        }
+      } else {
+        return new FIN_MatchedTransaction(transactions.get(0), 
FIN_MatchedTransaction.STRONG);
+      }
+    }
     if (algorithm.isMatchbpname()) {
       transactions = 
MatchTransactionDao.getMatchingFinancialTransaction(line.getBankStatement()
           .getAccount().getId(), transactionDate, reference,

------------------------------------------------------------------------------
Try New Relic Now & We'll Send You this Cool Shirt
New Relic is the only SaaS-based application performance monitoring service 
that delivers powerful full stack analytics. Optimize and monitor your
browser, app, & servers with just a few lines of code. Try New Relic
and get this awesome Nerd Life shirt! http://p.sf.net/sfu/newrelic_d2d_apr
_______________________________________________
Openbravo-commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openbravo-commits

Reply via email to