Projects:CashUp Improve Performance
Contents |
Introduction
The goal of this project is to improve the cashup performance.
This project is a refactor of the class Order Grouping Processor. This class creates the invoices, payments, transactions, etc... related to the cash up.
The main change in this class is that instead of insert one by one the records related to the invoices generated in the cash up, all records are inserted using clauses "insert - select", improving the performance of the inserts in the database.
Automated Tests
1. CashUpGroupingWithDiferentsBP
2. CashUpNoGroupingWithDiferentsBP
3. CashUpSplitLines
4. CashUpSplitLinesNotIncludeTaxes
5. CashUpWithTotalPaidCredit
6. CashUpWithPartialPaidCredit
Test Cases
Test Case 1
Pre-condition: POSTGRES - 1507 order lines
Results: Performance improvement 74 %
Test Case 2
Pre-condition: POSTGRES - 300 order lines
Results: Performance improvement 66 %
Test Case 3
Pre-condition: ORACLE - 100 order lines
Results: Performance improvement 47 %
Documentation
- Feature request in mantis: https://issues.openbravo.com/view.php?id=29774