Friday, December 6, 2024
11 changes · 18.0
Resolved issues and error corrections
This fix prevents accounting reports from using an incorrect exchange rate when a company currency has no rate recorded outside the selected reporting period. The system now falls back to an available in-period rate, or a neutral rate when no rate exists, improving accuracy in multi-company financial reporting.
Original PR description
A rate calculation error occurs when a currency without an exchange rate outside the selected period is used. Steps to reproduce: 1. Create two companies with different currencies. 2. Create a…
A rate calculation error occurs when a currency without an exchange rate outside the selected period is used. Steps to reproduce: 1. Create two companies with different currencies. 2. Create a journal entry in company 1. 3. Select both companies and select the second company. 4. Go to the Trial Balance report in the accounting module. 5. Check and remove all entries in `res.currency.rate` that fall outside the selected report period. For example, if 2024 is displayed, delete all other years entries. 6. The exchange rate will be incorrect. The issue stems from the SQL query in the `_get_table_builder_average` function. The query assumes the `out_period_rate` always exists, but it doesn't in some cases. The fix is to use the `in_period_rate` when the `out_period_rate` is missing, and if both are unavailable, default to 1. A temporary workaround is to add an exchange rate for each currency outside the period (similar to the Runbot, which has entries from 2010 and avoids the issue). opw-4321063.
This fix prevents sales users from seeing an access error when adding products to a sales order for customers with credit limits enabled. It keeps the credit limit check working while allowing sales teams without invoicing permissions to create orders as expected.
Original PR description
**Steps to reproduce:** - Install Sales - Go to Invoicing settings - Enable "Sales Credit limit" - Create a user with Sales rights and no Invoicing rights - Connect with the created user - Create a SO **Issue:** When a customer is set, an access error on "credit_limit" field is raised when adding a product. **Cause:** "credit_limit" is a company-dependent field. Since the refactoring of the company-dependent fields, the value is not retrieved with "sudo()" anymore. opw-4280420 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Fixed an accounting currency calculation that could incorrectly treat early days in a reporting period as having a zero exchange rate when no rate record existed yet. This ensures average currency rates use the proper default value, improving accuracy in financial reports and currency-related computations.
Original PR description
If a period containing some res.currency.rate object starts by some sub-period without any range, the average rate computation considered this sub-period as having a rate of 0. It's wrong; it should be 1.
This change relaxes restrictions that were preventing users from creating, updating, or deleting analytic items linked to journal entries. It restores the ability to mass edit these analytic items while a better synchronization approach is being developed.
Original PR description
The constrains introduced in 7bc8c8be44396a8a54466fe7fa48afad4a52c201 are too restrictive for users and avoid them to mass edit there analytic items. Another solution for keeping the analytic items and their analytic distribution synchronized is in progress. task-3977961
This fix aligns the accounting tax calculation logic used in the browser with the logic used on the server. It helps ensure users see consistent tax amounts throughout Odoo, reducing discrepancies in invoices or accounting screens.
Original PR description
Adapt the js-side of taxes computations according: https://github.com/odoo/odoo/commit/e43044582cce69ec3abc9838aa9afba06e073a80 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This fixes a point of sale issue where orders shared between different POS configurations could fail because the original configuration was not available in the current session. Currency information is now accessed in a way that works across shared orders, improving reliability for stores using multiple POS setups.
Original PR description
Config should not be accessed directly from the order since it can came from another config that isn't loaded in all session. For example with shared order between config, when an order is created on config A and loaded on config B, the config A link will not be available on config B. runbot err: 109327
This fixes an issue that prevented Point of Sale sessions from opening when they used a currency different from the company currency. Businesses can now operate PoS setups in alternate currencies without running into a loading error.
Original PR description
Before this commit, it wasn't possible to open a PoS in a different currency than the company currency. opw-4378523 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Accounting screens now show account codes and company names more consistently when users work across multiple companies. The change also prevents users from selecting accounts that do not belong to the current invoice, bill, or journal entry company, reducing data entry mistakes in financial documents.
Original PR description
- Fixed the `_field_to_sql` method so that `placeholder_code` doesn't show the company name if the account belongs to the active company; - Fixed `_field_to_sql` to add a space in `placeholder_code`;…
- Fixed the `_field_to_sql` method so that `placeholder_code` doesn't show the company name if the account belongs to the active company; - Fixed `_field_to_sql` to add a space in `placeholder_code`; - Allow searching on `placeholder_code` with the `=` operator - this allows the `account_id.placeholder_code` field to be used as a grouping key on reports. - Changed the account's display_name so that if it belongs to other companies than the active one, the company names are displayed (in parentheses). - Changed the `placeholder_code` so that it shows the code for one of the active companies (if the account is visible, then it must have a code in at least one of the active companies) rather than for one of the companies accessible to the user. - Fix the `_field_to_sql` for `placeholder_code` so that we do a LEFT JOIN on the first company of the account that is in the environment. This avoids excluding accounts simply because none of the account's `company_ids` is present among the active companies (e.g. a search might be done with `sudo` in which case the active companies shouldn't restrict the results returned). Enterprise PR: https://github.com/odoo/enterprise/pull/71813 task-4259552
This fixes an error that could prevent sales-related invoices from calculating tax totals correctly. The change uses the correct total value name, avoiding server errors and helping invoices process reliably.
Original PR description
**Description of the issue/feature this PR addresses:** The value `move.tax_totals` is defined in `/addons/account/models/account_move.py` by calling the function `_get_tax_totals_summary` from…
**Description of the issue/feature this PR addresses:** The value `move.tax_totals` is defined in `/addons/account/models/account_move.py` by calling the function `_get_tax_totals_summary` from `account_tax`: https://github.com/odoo/odoo/blob/5714ee114fb5c4b9d1342159b07efa27f16a7c8d/addons/account/models/account_move.py#L1551 The `_get_tax_totals_summary` generates a dict with the total amount stored as `total_amount` and not `amount_total` https://github.com/odoo/odoo/blob/5714ee114fb5c4b9d1342159b07efa27f16a7c8d/addons/account/models/account_tax.py#L1870 https://github.com/odoo/odoo/blob/5714ee114fb5c4b9d1342159b07efa27f16a7c8d/addons/account/models/account_tax.py#L2052-L2053 **Current behavior before PR:** Server throws a KeyError as `amount_total` doesn't exist in `move.tax_totals` **Desired behavior after PR is merged:** `move.tax_totals` is computed correctly Fixes https://github.com/odoo/odoo/issues/184408 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This change restores restrictions that prevent creating, editing, or deleting analytic items when they are tied to a journal item. It helps keep accounting and analytic reporting data consistent and reduces the risk of accidental changes to posted financial information.
Original PR description
Reverts 9ae263696efff17a872e848b03a7b08ba84cdca2 Community PR: odoo/odoo#189440 task-3977961
Users can now drag a read-only document into a folder they can edit without causing a failed move. The system creates a shortcut instead, making document organization smoother while preserving access restrictions.
Original PR description
This commit allows one to drag and drop a readonly document into another editable folder by creating a shortcut instead of moving it.