Friday, March 6, 2026
5 changes · saas-18.2
Resolved issues and error corrections
This update fixes a bug where users could incorrectly cancel subscriptions that already had invoices generated. The change adds a check to ensure subscriptions with active invoices cannot be cancelled after they've been closed, preventing revenue discrepancies and ensuring accurate subscription management. This improves data integrity and reliability.
Original PR description
Steps to reproduce: -------------------------------- 1. Install Subscription module 2. Create a new subscription quotation and confirm it 3. Generate an invoice for the subscription 4. Attempt to…
Steps to reproduce: -------------------------------- 1. Install Subscription module 2. Create a new subscription quotation and confirm it 3. Generate an invoice for the subscription 4. Attempt to cancel the subscription * A ValidationError is correctly raised 5. Close the subscription by selecting any close (churn) reason 6. Attempt to cancel the same closed subscription again Observation: -------------------------------- The subscription is successfully cancelled even though it already has invoices Issue: -------------------------------- In the following code: https://github.com/odoo/enterprise/blob/9e39b4b85fcb9f6ed5b21b942796b76b8a6eefdb/sale_subscription/models/sale_order.py#L741-L742 The cancellation logic does not check whether a subscription is already churned and still has active invoices Solution: -------------------------------- Added an additional condition to prevent cancelling churned subscriptions that still have active invoices opw-5479719 Forward-Port-Of: odoo/enterprise#106596
This update fixes an error in how project budgets are calculated, ensuring accurate spending and remaining balances. Previously, negative budget amounts were being incorrectly processed, leading to inaccurate percentage displays. This change ensures budget reports reflect the true financial status of projects.
Original PR description
Steps to reproduce: --------------------------- 1. Install the `project_account_budget` and `account_accountant` modules. 2. Create a new project and add an Analytic Account for it from the settings…
Steps to reproduce: --------------------------- 1. Install the `project_account_budget` and `account_accountant` modules. 2. Create a new project and add an Analytic Account for it from the settings page 3. Open the Project Kanban, click the three dots on the project card, and select Project's Updates. 4. Click Add Budget button and open the budget wizard. 5. Add a budget line in the wizard with a planned amount expressed as a negative value for an expense (for example: -10000). 6. Create a Vendor Bill using the same analytic account with an amount of 1000. 5. Confirm the bill. 6. Go back to Project's Updates and click New button to view the budget summary. Observation: --------------------------- The budget summary displays incorrect signs and percentages in Activities summary, for example: ``` -10.0% (-1,000.00) of the -10,000.00 budget has been spent. 110.0% (-11,000.00) of the budget is remaining. ``` This incorrectly shows -10% spent and 110% remaining instead of 10% spent and 90% remaining (-9,000). Issue: --------------------------- The project cost (already negative) was negated again when computing the spent amount in https://github.com/odoo/enterprise/blob/ac3f333d97eda5c86a0813490ac6204d4ec5721f/project_account_budget/models/project_update.py#L16 Double-negating the cost makes it positive, which then gets added to the expense budget instead of reducing it, producing inverted percentages and signs. Solution: --------------------------- For expense budgets (negative budgets), do not apply an extra negative sign when calculating the project cost so the spent, remaining, and percentage values are computed correctly. After the fix: ``` 10.0% ($ 1,000.00) of the $ -10,000.00 budget has been spent. 90.0% ($ -9,000.00) of the budget is remaining. ``` opw-5357854 Forward-Port-Of: odoo/enterprise#108560 Forward-Port-Of: odoo/enterprise#102126
This update fixes a previous issue where users without the necessary permissions could access the 'Insert in spreadsheet' action in Kanban views. Now, the action is only visible to authorized users, and inserting records from Kanban views grouped by m2m fields is no longer blocked, streamlining the spreadsheet workflow.
Original PR description
Current behavior before PR: - The 'Insert in spreadsheet' action was always visible in the kanban view action menu, even when the user lacked access rights for Documents or Dashboards. - Inserting records from a kanban view into a spreadsheet was blocked when the view was grouped by an m2m field. Desired behavior after PR is merged: - The action is shown in the kanban view action menu only if the user has the required permissions. - The m2m field check is removed when inserting from kanban views. Task: 5930184
This update resolves an issue preventing users with multiple companies from successfully setting up their Amazon accounts. The fix allows access to all company data during the onboarding process, eliminating a mismatch error. This ensures a smoother and more reliable experience for all users.
Original PR description
The onboarding return route is a website route with access restricted to the website company only. This causes an error when the company doesn't match the Amazon account being connected. This commit allows users to access all their companies during Amazon account setup to avoid this mismatch error. opw-5944078 Forward-Port-Of: odoo/enterprise#109590
This update fixes an issue where reconciling batch payments with bank statements would fail due to currency exchange rate discrepancies. The system now correctly handles changes in exchange rates, ensuring that bank reconciliations complete successfully. This improves the reliability of financial reporting.
Original PR description
…tion Currently, under certain conditions, reconciling a batch payment with a bank statement may not be possible as the system tries to create an unbalanced move. Steps to reproduce: - Have the main…
…tion Currently, under certain conditions, reconciling a batch payment with a bank statement may not be possible as the system tries to create an unbalanced move. Steps to reproduce: - Have the main company in USD and EUR as foreign currency - Have a bank journal with currency EUR (Bank EUR) - Create an xchange rate for today (1.1) - Make a Payment (EUR), it should not have an associated move - Put the payment in a batch - Update the exchange rate for today (1.2) - Create a Bank transaction in the journal Bank EUR matching the payment amount - Open the bank reconciliation screen and reconcile the transaction with the batch Expected result: Everything is reconciled. Actual result: User gets an error message saying that the account move is not balanced. Analysis: The issue occurs because the reconciled payment amount is converted to the company currency using the date provided in the payment. However the rate was changed in the meanwhile, so it does not match the amount that was used to create the exchange entry values. opw-5164405 Forward-Port-Of: odoo/enterprise#98495