Openbravo Issue Tracking System - Openbravo ERP
View Issue Details
0015962Openbravo ERPZ. Otherspublic2011-02-14 09:532011-02-16 12:43
maite 
rmorley 
urgentmajoralways
newopen 
5
2.50MP26 
 
Advanced Payables and Receivables Mngmt
No
0015962: Matching algorithm interface needs to support overpayment
The new interface for the matching algorithm is not sufficient in case of
overpayment with reference to one invoice.

As an example, we explain 2 business cases:

Business case 1:
There are 2 sales invoices for one customer. This customer pays for both invoices in one bank transfer => one bank statement line

Invoice 1, amount = 120,--
Invoice 2, amount = 80,--
Payment = 200,--

The matching algorithm must be able to find both invoices as strong matches. At the moment he can only find invoice 1 or 2.

Business case 2:
There is 1 sales invoice for the customer. The customer pays more than the amount of the invoice.

Invoice, amount = 120,--
Payment = 200,--

The matching algorithm should return the matched invoice and the matched business partner for credit booking.

public FIN_MatchedTransaction match(FIN_BankStatementLine bankStatementLine,List<FIN_FinaccTransaction> excluded) throws ServletException;
method, only returns one element. Change the return type of the match method to a List-Type: List<FIN_MatchedTransaction>
No tags attached.
Issue History
2011-02-14 09:53maiteNew Issue
2011-02-14 09:53maiteAssigned To => rmorley
2011-02-14 09:53maiteModules => Advanced Payables and Receivables Mngmt
2011-02-14 11:22rmorleyNote Added: 0034167
2011-02-16 12:43mgerkeNote Added: 0034229

Notes
(0034167)
rmorley   
2011-02-14 11:22   
For each business case, can you describe the matching logic that the system should follow?
In both business cases described there is no match against the value of the bank statement line and any single payment line in Openbravo, so there has to be matching criteria other than doing a match on value.
(0034229)
mgerke   
2011-02-16 12:43   
There is a priority in the matching:
1. payments
2. invoices
3. orders
4. business partners

If the matching algorithm finds one match on a specific level, the algorithm should include this in his result list and search further for more matches on the same level and the lower levels. This will be done by our matching algorithms. But at his time, the search process is interrupted and the algorithm returns with only one result.

But there must be also changes in the dialog to show these multiple matches on one bank statement line.