Wednesday, October 9, 2024
15 changes
1 change
Resolved issues and error corrections
Manufacturing backorders now correctly keep available materials reserved for the production order they were meant for. This prevents stock from being incorrectly consumed or marked as used before the backorder is completed, improving reliability in manufacturing workflows.
Original PR description
Community-side fix for creating move lines instead of moves for production backorders. This change ensures that product quantity which was *intended* to be used by one production will rightly get reserved by that production's backorder. Additionally, we now use more care when marking moves as picked because this field has an inverse which will mark all of the move's move lines as consumed / done, despite them being incomplete. opw-4148050
7 changes
Resolved issues and error corrections
This update fixes an issue that prevented Saudi Arabia and United Arab Emirates invoice reports from being printed. It updates the GCC invoice report to work with the latest tax total structure in Odoo 18, restoring reliable invoice generation for affected businesses.
Original PR description
**Description of the issue/feature this PR addresses:** l10n_gcc_invoice which is used for l10n_sa & l10n_ae had an issue with tax totals which did not allow the reports to be printed in v18. Link to task: [#4231808](https://www.odoo.com/web#model=project.task&id=4231808) **Current behavior before PR:** l10n_sa & l10n_ae cannot be printed due to an error. **Desired behavior after PR is merged:** Fixes the issue with l10n_gcc_invoice by adapting to the new changes for tax_totals in v18. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This fix lets Odoo 18 IoT boxes accept connection tokens created by Odoo 17 databases. It prevents connection failures during upgrades or mixed-version setups, helping businesses keep existing IoT hardware working without manual token changes.
Original PR description
In v18, a new format was given to the connection token as shown below: v17: `http://1.2.3.4|12345678|aaaa-bbbb-cccc|M123` v18: `http://1.2.3.4?token=12345678&db_uuid=aaaa-bbbb-cccc&enterprise_code=M123` However these formats are not compatible. Currently you cannot connect a v17 database to a v18 IoT box. After this PR both formats are compatible. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Restaurant tables are now marked as available once an order has been fully paid and completed. This prevents tables from incorrectly staying occupied, helping staff reuse tables without manual correction.
Original PR description
Before this commit: ==================== The table remained occupied after the order was completed (payment done) After this commit: =================== Tables are now released once the order is fully completed, ensuring they are available for future use. Task- 4228671
This update fixes several point-of-sale issues that could cause errors when deleting demo orders, prevent customer counts from saving correctly, and make table transfer instructions hard to read on mobile. It improves cashier reliability and usability, especially for restaurants using POS on smaller screens.
Original PR description
pos*: l10n_in_pos, point_of_sale, pos_restaurant This commit solves multiple tracebacks and bugs in the POS. 1. Fix traceback when deleting demo records in POS. When deleting some demo orders in the…
pos*: l10n_in_pos, point_of_sale, pos_restaurant
This commit solves multiple tracebacks and bugs in the POS.
1.
Fix traceback when deleting demo records in POS.
When deleting some demo orders in the POS, a traceback was
raised because the lines of the orders did not had an order
linked to it. This was because they did not have an uuid.
We now have default uuid values for orders, order lines and
pos payments.
2.
Fix customer count not update.
When changing the customer count on an order in the POS, the
customer count was not updated in the backend. This was because
the customer count was not correctly updated in the frontend
leading to a customer count of 0 in the backend.
3.
Fix "Select table to transfer order" not visible on mobile.
When transfering an order in mobile, the text "Select table to
transfer order" was not visible because the text was too big.
We now display "Transferring" when in mobile. We also stop
showing the floating orders tab when transferring an order as it
makes no sense to show it.
Enterprise PR: https://github.com/odoo/enterprise/pull/70357
---
I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-prThis fixes an issue in Odoo Studio that prevented users from creating related fields pointing to one-to-many records. The correction restores expected Studio customization behavior, helping users configure forms and data relationships without workarounds.
Original PR description
Because of odoo/enterprise@aba680d65ae22f829f7e21e85df1dc86995ec460 it was not possible anymore to create related fields to one2many's in studio. It was just a little mistake in the way the in-expression assignation was written task-4150539
Asset groups opened from Assets or Loans now receive safe default counts when linked records are not available. This prevents error screens and lets users continue working with asset and loan records normally.
Original PR description
Currently, multiple tracebacks occur when the user tries to access the asset group through the internal link from the assets and the loans form view. To reproduce these issues: Traceback 1: 1)…
Currently, multiple tracebacks occur when the user tries to access
the asset group through the internal link from the assets and the loans form view.
To reproduce these issues:
Traceback 1:
1) Install Accounting
2) Create a new loans record from Accounting/Loans
3) Create a new asset group and open the group record through an internal link
```
ValueError: Compute method failed to assign account.asset.group(2,).count_linked_assets
```
Traceback 2:
1) Create a new assets record from Accounting/assets
2) Create a new asset group and open the group record through an internal link
```
ValueError: Compute method failed to assign account.asset.group(2,).count_linked_loans
```
When a user creates an asset group record from loans, the `count_linked_asset` value is not assigned.
Conversely, when creating a group from assets, the `count_linked_loan` field remains unassigned.
Both of these fields are compute fields, and the compute methods have failed to assign values,
resulting in the tracebacks mentioned above.
Giving a fallback value will resolve this issue.
sentry-5967765739Fixes improve commission plan behavior when switching a plan from achievement-based rules to target-based rules after returning it to draft. Subscription sales based on monthly recurring revenue should also now appear correctly in the user's commission view, helping sales teams track expected earnings more accurately.
Original PR description
- When you select based on achievement save, then draft again and change it into based on achievement to based on targets - When I try commission plan based on MRR and try to sell sub, I don't see my commission in "my commission"
7 changes
Resolved issues and error corrections
Fixed a bug where switching between product variants in the rental shop would incorrectly show unavailable dates for all variants instead of just the selected one. Now when customers select a different size or variant of a rental product, the calendar accurately reflects availability for that specific variant only.
Original PR description
Problem: Once we set the product ID in `WebsiteSaleDaterangePicker`, it doesn't get updated if it has a truthy value. However, it should update because a different variant (product ID) can be selected. Steps to reproduce: - Install a database with website, eCommerce, and Rental (ensure the "website_sale_stock_renting" module is installed). - Create a product that can be rented with 3 variants. - Add a daily rate of your choice. - In the Sales tab, untick the option "Continue selling if out-of-stock." - Restock 1 quantity of each variant and publish the product on the website. - From the shop, rent the product with variant size S for one week. - Return to the shop and select another variant (M or L). The calendar will incorrectly show the rental days in red, as if M & L are also already rented. However, they can still be rented. opw-4115519
This fix resolves an issue where products added to repair orders were being incorrectly included in return shipments. When creating a repair order from a helpdesk ticket, the system was unintentionally linking repair inventory movements to the original return picking. The fix uses a more targeted approach to associate repair orders with returns without affecting the inventory movements created during repairs.
Original PR description
### Steps to reproduce: - Create a Helpdesk team with the options "Return" and "Repairs" - Create a product, sell 1 unit and deliver it. - Create a ticket for the Helpdesk Team, select the customer…
### Steps to reproduce: - Create a Helpdesk team with the options "Return" and "Repairs" - Create a product, sell 1 unit and deliver it. - Create a ticket for the Helpdesk Team, select the customer who bought the product > create and validate a return of the product to your warehouse through the ticket. - Create an associated repair order and add a line for an other product in the part tabs - Go back to the return picking #### > the product added to the repair was also added to the return picking ### Cause of the issue: A `default_picking_id` is added to the context of the form view of the repair order by the `_prepare_repairs_default_value` of the `action_repair_order_form` so that it prefils the form of the repair: https://github.com/odoo/enterprise/blob/e74b05fa7a777053fd0e2cd5a265de365e1e434a/helpdesk_repair/models/helpdesk_ticket.py#L36-L40 https://github.com/odoo/enterprise/blob/e74b05fa7a777053fd0e2cd5a265de365e1e434a/helpdesk_repair/models/helpdesk_ticket.py#L55-L56 However, this values stays in the context and will be added as a default value for each of the move that will be creted from this view. ### Fix: Thanks to commit odoo/odoo@3898d61046cc0338082fdcbe0df282241372361a, we now have a default getter that can be used to associate a default picking id to the repair order when necessary without the need to put a `default_picking_id` in the context. opw-4159779
This fix restores missing persona name and data information that was being lost when processing WhatsApp message reactions. The issue affected how reaction metadata was being formatted and stored, which has now been corrected to ensure complete information is preserved during WhatsApp interactions.
Original PR description
* test_whatsapp odoo/odoo#178173
This fix resolves an issue where external API calls to post invoices were failing due to a missing return statement in the action_post() method. The method now properly returns a value, allowing external systems to successfully post invoices through the API without encountering errors.
Original PR description
Method `action_post()` was added in 17.0 as a front-end helper funcion to initialize `_post()`. This method is expected to return a value, however, `action_post()` was missing the intended `return` statement. This causes external API calls to `action_post()` to fail since `_xmlrpc()` does not allow `NoneType` values.
To reproduce:
1) Create an invoice using external API.
2) Attempt a call to action_post() using xmlrpc.
3) TypeError("cannot marshal None unless allow_none is enabled") should appear.The bank reconciliation widget now displays all lines from a bank transaction, not just the main liquidity and transfer lines. This ensures users can see the complete picture of all transaction details when reconciling bank statements, making the reconciliation process more transparent and complete.
Original PR description
Consider an unreconciled bank statement (line) in the bank reconciliation widget. Currently only the liquidity and suspense/transfer line of the associated move are shown. This means that some lines of the move are not shown. After this commit we show all the line (so i.e. the other lines). Since the diff is not the nicest: The commit just removes the outer `if wizard.st_line_id.is_reconciled`. Forward-Port-Of: odoo/enterprise#71236
This update resolves multiple issues preventing users from replying to comments on Facebook, YouTube, Instagram, and LinkedIn posts. Users were experiencing errors when trying to reply to existing comments or comment on posts with certain settings. The fix ensures the system properly handles comment data and validates responses from social platforms, allowing seamless commenting and replies across all supported social media channels.
Original PR description
Commit 1 ======== Steps to reproduce the issue: - add comment to a Facebook/youtube post. - keeping the `Comments` dialog box open, try replying the same comment. - we get a traceback. Reason: - due…
Commit 1 ======== Steps to reproduce the issue: - add comment to a Facebook/youtube post. - keeping the `Comments` dialog box open, try replying the same comment. - we get a traceback. Reason: - due to the missing comments data structure, we get an error when trying to add the new comment. - LOC responsible for the traceback: https://github.com/odoo/enterprise/blob/16.0/social/static/src/xml/social_templates.xml#L311 Fix: - since the comments data structure is not returned from the post request made to post the commnet, we manually ensure it exists. Commit 2 ======== [FIX] social: fix various issues 1. social_instagram: ISSUES: - create a post on the instagram platform with commenting turned off. - try commenting on it from Odoo. We get a traceback. - also, if we delete the post from the platform and then try to comment from Odoo, we get a traceback. REASON: - there is no existing implementation to check if commenting is enabled/disabled on the post. FIX: - we now check if commenting is enabled or not while trying to add comment on the post TECHNICAL NOTE: - the correct way to check if commenting on a post is enabled or not is to request a field named `is_comment_enabled`. - more details --- https://developers.facebook.com/docs/instagram-platform/instagram-graph-api/reference/ig-media - but to save us from making an extra request, we simply catch the error received to when trying to add a comment. ================================================================================ 2. social_linkedin ISSUE: - delete an existing post from the linkedIn platform. - now try commenting on it from Odoo. We get a traceback. REASON: - The response received from the request to fetch the comments is not validated. FIX: - validating the response before further execution. Task-3759530 Forward-Port-Of: odoo/enterprise#67079
Users can now search for recurring plans by entering text in the search field. Previously, the search feature was not responding to user input even though custom filters were working. This fix enables the search functionality by properly configuring the search view fields.
Original PR description
The search functionality in the Recurring Plan view was not working when users entered text. While custom filters worked, the search field failed to respond to user input because no fields were defined in the search view. OPW-4116088