- Sep 17, 2023
-
-
Odoo Translation Bot authored
-
- Sep 03, 2023
-
-
Odoo Translation Bot authored
-
- Aug 27, 2023
-
-
Odoo Translation Bot authored
-
- Aug 20, 2023
-
-
Odoo Translation Bot authored
-
- Aug 13, 2023
-
-
Odoo Translation Bot authored
-
- Aug 06, 2023
-
-
Odoo Translation Bot authored
-
- Jul 30, 2023
-
-
Odoo Translation Bot authored
-
- Jul 23, 2023
-
-
Odoo Translation Bot authored
-
- Jul 09, 2023
-
-
Odoo Translation Bot authored
-
- Jul 02, 2023
-
-
Odoo Translation Bot authored
-
- Jun 25, 2023
-
-
Odoo Translation Bot authored
-
- Jun 18, 2023
-
-
Odoo Translation Bot authored
-
- Jun 11, 2023
-
-
Odoo Translation Bot authored
-
- Jun 04, 2023
-
-
Odoo Translation Bot authored
-
- May 28, 2023
-
-
Odoo Translation Bot authored
-
- May 07, 2023
-
-
Odoo Translation Bot authored
-
- Apr 26, 2023
-
-
Odoo Translation Bot authored
-
- Apr 16, 2023
-
-
Odoo Translation Bot authored
-
- Apr 09, 2023
-
-
Odoo Translation Bot authored
-
- Apr 06, 2023
-
-
william-andre authored
As the number of `account.move`, `account.move.line`, `account.bank.statement.line` and `account.journal` is growing, the accounting dashboard, which is the entry point of the app, gets slower and slower. There are multiple issues being addressed in this commit: * The data for each journal is computed journal by journal. This means that the number of queries run increases linearly with the number of journals. While the boilerplate around running multiple queries is negligible compared to the running time of the queries in this case, some queries take as much time to run for one journal or for many. To improve this, all the queries are now batched. This has been done by refactoring the code; all these functions are now called on as many records as needed[^1]: - `_get_journal_bank_account_balance` - `_get_journal_outstanding_payments_account_balance` - `_get_last_bank_statement` - `get_line_graph_datas` - `get_bar_graph_datas` - `get_journal_dashboard_datas` * The gap detection and the entries' count are computed fields (`has_sequence_holes` and `entries_count` respectively). We don't need to display/compute these fields for all types of journals, but since they were mentioned by using a `<field/>` node in the view, they were computed for all journals displayed. Instead of using the `<field/>` node, we are now setting the value in the `kanban_dashboard` field. * Documents in foreign currencies on journals in foreign currencies need to get the rate in order to be aggregated in the journal's currency. There are 3 cases: - Document in journal's currency - Company's currency is the same as the journal's - Document, company and journal have 3 different currencies Before this commit, the second case will still fetch the daily rate for the document in order to do the conversion, but we actually already know the conversion; it is stored on the document. Benchmark ========= On a `populate` database with: - 4 `res.company` (with accounting enabled) - 45 `account.journal` - 19k `account.move` - 140k `account.move.line` - 4k `account.bank.statement.line` - 4 `account.bank.statement` | Query count | Query time | Remaining time --------------------------- | ----------- | ---------- | -------------- Before fix | 279 | 0.333s | 0.375s After fix (without update) | 40 | 0.120s | 0.170s After fix (with update[^2]) | 38 | 0.100s | 0.170s Note that the currency conversion was disabled because the populate database doesn't represent a realistic dataset regarding this. Disabling it only improves the numbers before the fix. Note ==== A lot of the time remaining comes from the aggregation of draft/unpaid invoices with the correct rate done in python instead of in SQL. This commit doesn't change the behavior but this could be rethought from a function point of view. ________________________________________________________________________ [^1]: the old functions have been kept for compatibility, new ones are suffixed by `_batched` and made private if it wasn't the case. [^2]: some optimization require the views and indexes to be updated closes odoo/odoo#103697 Related: odoo/enterprise#33165 Signed-off-by:
Quentin De Paoli <qdp@odoo.com>
-
- Apr 02, 2023
-
-
Odoo Translation Bot authored
-
- Mar 26, 2023
-
-
Odoo Translation Bot authored
-
- Mar 20, 2023
-
-
Martin Trigaux authored
They dates from < 2027 and are quite outdated. Favour the nl translation instead. n_BE is not on Transifex so it was not possible to correct bad translations. closes odoo/odoo#115798 Signed-off-by:
Martin Trigaux (mat) <mat@odoo.com>
-
- Mar 14, 2023
-
-
Maximilien (malb) authored
Before this PR, the res config for the accounting page needed some UI fixes (checkbox misplaced, missing attrs invisible). This PR fixes that. closes odoo/odoo#115079 Task-id: 3226604 Related: odoo/enterprise#38083 Signed-off-by:
Nicolas Viseur (vin) <vin@odoo.com>
-
- Mar 12, 2023
-
-
Odoo Translation Bot authored
-
- Mar 06, 2023
-
-
Yolann Sabaux authored
Steps to reproduce: - Create a new journal Bank - In Sequence, find the 'New Bank Check" and edit it so the sequence can be 10 number digits long - Create a Vendor Payments with the the New Banck and Check as a method - Click on Print a check - Set the check number to 2147483648 and validate - Create a new payment with the check method - Click on Print a check Issue: Error is raised Cause: As for https://github.com/odoo/odoo/pull/112832 there is a second check in order to increment the check number opw-3140973 closes odoo/odoo#114480 X-original-commit: 531147bb Signed-off-by:
John Laterre (jol) <jol@odoo.com> Signed-off-by:
Yolann Sabaux (yosa) <yosa@odoo.com>
-
- Mar 05, 2023
-
-
Odoo Translation Bot authored
-
- Feb 26, 2023
-
-
Odoo Translation Bot authored
-
- Feb 23, 2023
-
-
Yolann Sabaux authored
Steps to reproduce: - Create a new journal Bank - In Sequence, find the 'New Bank Check" and edit it so the sequence can be 10 number digits long - Create a Vendor Payments with the the New Banck and Check as a method - Click on Print a check - Set any number > 2147483647 and validate Issue: Traceback Cause: The query SQL make a check to verifiy that the number is correct ('025'::integer == '25'::integer but '025'!='25) But using INTEGER limits the number up to 2147483647 (https://www.postgresql.org/docs/current/datatype-numeric.html ) Solution: Use BIGINT whose limit is 9223372036854775807 opw-3140973 closes odoo/odoo#113483 X-original-commit: 49dd9dff Signed-off-by:
Yolann Sabaux (yosa) <yosa@odoo.com> Signed-off-by:
John Laterre (jol) <jol@odoo.com>
-
- Feb 20, 2023
-
-
Odoo Translation Bot authored
-
- Feb 13, 2023
-
-
Odoo Translation Bot authored
-
- Feb 05, 2023
-
-
Odoo Translation Bot authored
-
- Jan 29, 2023
-
-
Odoo Translation Bot authored
-
- Jan 22, 2023
-
-
Odoo Translation Bot authored
-
- Jan 15, 2023
-
-
Odoo Translation Bot authored
-
- Jan 08, 2023
-
-
Odoo Translation Bot authored
-
- Jan 01, 2023
-
-
Odoo Translation Bot authored
-
- Dec 25, 2022
-
-
Odoo Translation Bot authored
-
- Dec 19, 2022
-
-
Martin Trigaux authored
closes odoo/odoo#108071 Related: odoo/enterprise#35036 Signed-off-by:
Martin Trigaux (mat) <mat@odoo.com>
-
- Dec 18, 2022
-
-
Odoo Translation Bot authored
-