Monday, March 11, 2024
20 changes · saas-17.1
Resolved issues and error corrections
A bug preventing the partner autocomplete from appearing during invoice creation has been fixed. This update ensures users can quickly and easily find and select partners when entering invoice data, improving efficiency. The fix addresses a change in how new invoices are created.
Original PR description
Steps to reproduce: [account, iap credit] - create a new invoice - start to write "test" for the partner Issue: The partner autocomplete is not displayed Cause: in https://github.com/odoo/odoo/pull/150106 we add a condition for the quickCreate bypassing the possibility of having createEdit set to true opw-3698400 Forward-Port-Of: odoo/odoo#154771 Forward-Port-Of: odoo/odoo#153608
This update addresses a warning that appears when modules incorrectly configure post-load methods. The change ensures that post-load methods are handled consistently, preventing potential issues during module loading and testing. This improves the stability and reliability of Odoo.
Original PR description
-Step to reproduce: add a post_load method in the init of any module, specify in the manifest like : 'post_load': 'post_load'. Run test_manifests of the test_lint module and we will get warning Description of the issue/feature this PR addresses: Current behavior before PR: Desired behavior after PR is merged: --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#156347 Forward-Port-Of: odoo/odoo#154316
This update allows users to select a temporary account when creating a branch company within Point of Sale. Previously, this setting was unavailable, leading to inconsistencies in accounting. Now, branch companies can be properly configured for accurate financial reporting.
Original PR description
**Before this PR:** When the user creates a branch company, the pos(accounting) setting does not allow the selection of a default temporary account for the user. **After this PR:** The user is allowed to choose a temporary account from the branch company. **Task**-3775873 Forward-Port-Of: odoo/odoo#156478
This update fixes an issue where the order confirmation page and preparation display weren't activated when orders had a zero total amount. Now, the confirmation page and order sending process are consistently triggered upon order confirmation, regardless of the order total.
Original PR description
The confirmation page wasn't displayed and the order wasn't sent to the preparation display when confirming an order with a total of 0. Now the confirmation page is displayed and the order is send to the preparation display when the order is confirmed regardless of the total amount. Forward-Port-Of: odoo/odoo#157028
This update resolves an issue where the old job search route (`/jobs`) caused errors due to changes in how search parameters were handled. The fix automatically redirects users to the new route, preserving any search criteria entered to ensure a seamless and accurate job search experience.
Original PR description
__Current behavior before commit:__ `/jobs` routes have been modified in [this commit][1]. Old ones are deprecated but are still working for backward compatibility. When searching on this page,…
__Current behavior before commit:__ `/jobs` routes have been modified in [this commit][1]. Old ones are deprecated but are still working for backward compatibility. When searching on this page, search params are now just added at the end of the URL (instead of being part of the path like before). If the URL of the page is a deprecated one, this can create a conflict with the previous way the params were handled and produce an error. __Description of the fix:__ Redirect the user to the new route any time he tries to reach the deprecated ones. Any parameters included in the old URL will be carried over to the new route to maintain expected behavior. If a parameter is provided both in the path and as a kwarg, the kwarg value will take precedence. __Steps to reproduce the issue on runbot:__ 1. Go to `/jobs/country/20` 2. Make a search using the search bar -> Crash opw-3781374 [1]: https://github.com/odoo/odoo/commit/54f246f9c75b8f1ebdc637c6000f3e4773d702d5 Forward-Port-Of: odoo/odoo#157079 Forward-Port-Of: odoo/odoo#156918
This update fixes an incorrect translation within the Serbian language version of Odoo. Previously, the 'Specific VAT rate 10%' tax group was translated as an invalid term. Now, it correctly displays as 'Opšta stopa PDV-a 10%', ensuring accurate tax reporting for Serbian users.
Original PR description
Description of the issue/feature this PR addresses: This PR fixes translation of the tax group `Specific VAT rate 10%` Current behavior before PR: When using Serbian language tax group `Specific VAT rate 10%` is translated as `ZALIHE MATERIJALA` which is invalid. Desired behavior after PR is merged: When using Serbian language tax group `Specific VAT rate 10%` will be translated as `Opšta stopa PDV-a 10%` which is correct. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#155198
This update fixes an issue where the quantity of components consumed during MO unbuilding was incorrectly displayed. Previously, the system showed the full planned quantity even after consuming a smaller amount. This change ensures that the unbuild process accurately reflects the actual component usage, improving inventory accuracy.
Original PR description
Step: * Create BoM A: product A - qty 1, bom line: product = Component X, qty = 20 * Create MO with Bom A and produced_qty = 1: + on components: To Consume = 20, Consumed = 15 + Unbuild MO, check Unbuild, check Product Moves of Unbuild, check line product Component X has Quantity = 20, in fact quantity must = 15 **I consumed a smaller quantity of components than planned, but when I unbuild MO, move lines of unbuild has quantity done = quantity planned, not the actual quantity consumption. I think this is a bug** --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#156952 Forward-Port-Of: odoo/odoo#152805
A recent update to asset depreciation calculations caused a sorting issue when viewing asset entries. This was triggered by modifying the dates of asset entries, specifically when using new entry IDs. This fix ensures that asset entries are correctly sorted regardless of their creation date, preventing incorrect display of depreciation schedules.
Original PR description
To reproduce: - Install account_accountant - Create an asset (monthly for example) - Compute Depreciation - Modify the date of the first entry to 2 months later - Modify the date of the second entry to 1 month later (so same month) => Traceback The problem is that sorted does not work with ids of NewId. We should look at its _origin. There is a PR that would try to fix it in general, but it's in master (and is not sure to be merged https://github.com/odoo/odoo/pull/155850) The problem only began to occur in 17.0 because of the changes of the onchange function. opw-3759153 (in chatter) --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#156874
This update adds logging for when cron jobs are run manually through the Odoo interface. Previously, these manual runs weren't tracked, leading to confusion when issues like duplicate emails occurred. By logging these actions, our support team can better diagnose and resolve problems related to concurrent cron executions.
Original PR description
The INFO "Starting job x" and "Job x done" logs are only logged for the automatic executing of the cron by the cron worker. When running the cron manually via its form view, no INFO was logged. The technical support is reporting problems where a cron server action is running twice at a same moment leading to problems such as mass-mailing sending emails twice. There is a mutual exclusion mechanism for cron workers but no exclusion mechanism seems in place for http worker vs cron worker. Logging the "run manually" actions will help us figuring out the problems. --- **[[FIX] base: concurrent cron worker and manual run](https://github.com/odoo/odoo/pull/154763/commits/3b74c9af776311e38a1712ab64cb42cd25188db4)** It is possible for a cron to be executed twice at a same moment if the cron is currently being executed by a cron worker and that a user click on the "run manually" button from its form view. Forward-Port-Of: odoo/odoo#156914 Forward-Port-Of: odoo/odoo#154763
Miscellaneous changes
When installing the Odoo Debian package on Bookworm, under certain conditions, the following bug may arise: `Warn: Can't find .pfb for face 'Times-Roman'` See https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1059326 As this bug is not yet fixed on the Debian side, this commit is a workaround. This workaround was tested against Ubuntu Jammy and Debian Bookworm. It works in both version because the odoo depends on gsfonts and: - on Jammy, the file exists so the workaround is not appli
Original PR description
When installing the Odoo Debian package on Bookworm, under certain conditions, the following bug may arise: `Warn: Can't find .pfb for face 'Times-Roman'` See https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1059326 As this bug is not yet fixed on the Debian side, this commit is a workaround. This workaround was tested against Ubuntu Jammy and Debian Bookworm. It works in both version because the odoo depends on gsfonts and: - on Jammy, the file exists so the workaround is not applied - on Bookworms the gsfonts package installs the workaround target file x-original-commit: 70e192137e9b603c502aea878313cd7611fe0337 Forward-Port-Of: odoo/odoo#154017
Purpose: ------- If you open different frontend room booking views using the same browser profile, all rooms will receive and handle all bus notifications, which leads to rooms views showing bookings created for other rooms. This is due to the bus service using a single websocket connection that is shared across the different tabs. A simple workaround to display several frontend rooms views using one device consists in using different browser profiles. This commit adds a warning at the t
Original PR description
Purpose: ------- If you open different frontend room booking views using the same browser profile, all rooms will receive and handle all bus notifications, which leads to rooms views showing bookings created for other rooms. This is due to the bus service using a single websocket connection that is shared across the different tabs. A simple workaround to display several frontend rooms views using one device consists in using different browser profiles. This commit adds a warning at the top of the frontend view when several tabs are detected, that asks the user to close the other tabs . Task-3698135 Forward-Port-Of: odoo/enterprise#55018
Steps to reproduce: ------------------- 1. Install sale_planning (without demo data) 2. Create a service product with "Plan Services" activated 3. Create an SO with this product and confirm the SO 4. Click on "To Plan" stat button 5. Click on any pill to create a new slot 6. The traceback occurs The traceback also occurs in the following scenario: ------------------- 1. Install sale_planning (without demo data) 2. Open Planning > Schedule > By Role 3. Click on any pill to create a
Original PR description
Steps to reproduce: ------------------- 1. Install sale_planning (without demo data) 2. Create a service product with "Plan Services" activated 3. Create an SO with this product and confirm the SO 4.…
Steps to reproduce: ------------------- 1. Install sale_planning (without demo data) 2. Create a service product with "Plan Services" activated 3. Create an SO with this product and confirm the SO 4. Click on "To Plan" stat button 5. Click on any pill to create a new slot 6. The traceback occurs The traceback also occurs in the following scenario: ------------------- 1. Install sale_planning (without demo data) 2. Open Planning > Schedule > By Role 3. Click on any pill to create a new slot 4. The traceback occurs Fix: ------------------- When there is no demo data/records, the gantt view uses sample data. In which for instance, the role_id field is randomly generated. So when clicking on the pill to create a new slot with the given role_id, the corresponding 'planning.role' record is not found, resulting in a traceback. To fix that, we check if the sample data is enabled, in which case we ignore the "fake" ids given by the sample records. task-3777485 Forward-Port-Of: odoo/enterprise#58096
…of SEPA Forward-Port-Of: odoo/enterprise#57981
Original PR description
…of SEPA Forward-Port-Of: odoo/enterprise#57981
*: test_l10n_be l10n_ch Before this commit, both l10n modules were creating demo leave types almost identical to the demo and data already defined in the `hr_holidays` module. This commit removes those duplicates and refer to the equivalent of the Time Off module. Forward-Port-Of: odoo/enterprise#53642
Original PR description
*: test_l10n_be l10n_ch Before this commit, both l10n modules were creating demo leave types almost identical to the demo and data already defined in the `hr_holidays` module. This commit removes those duplicates and refer to the equivalent of the Time Off module. Forward-Port-Of: odoo/enterprise#53642
Issue: ------ In the helpdesk application, when a timesheet is added to a helpdesk ticket, it does not have a commercial partner (we can add the field with studio to see this behaviour). There may be one if a commercial partner exists for the helpdesk project. This behaviour is contradictory to that found in project. Solution: --------- Add the `helpdesk_ticket_id` field invisibly in the view so that this field is in the fields to be updated with the onchange. It will be correctly up
Original PR description
Issue: ------ In the helpdesk application, when a timesheet is added to a helpdesk ticket, it does not have a commercial partner (we can add the field with studio to see this behaviour). There may be one if a commercial partner exists for the helpdesk project. This behaviour is contradictory to that found in project. Solution: --------- Add the `helpdesk_ticket_id` field invisibly in the view so that this field is in the fields to be updated with the onchange. It will be correctly updated during the onchange. Override the compute method to obtain the `commercial_partner_id` field in order to take the commercial partner from the helpdesk ticket and not from the task. opw-3759824 Forward-Port-Of: odoo/enterprise#58292 Forward-Port-Of: odoo/enterprise#58043
Steps to reproduce ================== - Go to the barcode app - Click on "Batch transfers" - Open a record - Add a new product and confirm - Click on the pencil next to the newly added product - Click on the delete button => `Cannot read properties of undefined (reading 'suggested_package')` Cause of the issue ================== When deleting a line, it is removed from the state [0] Solution ======== We simply need to check that the line exists --- [0]: https://gi
Original PR description
Steps to reproduce ================== - Go to the barcode app - Click on "Batch transfers" - Open a record - Add a new product and confirm - Click on the pencil next to the newly added product - Click on the delete button => `Cannot read properties of undefined (reading 'suggested_package')` Cause of the issue ================== When deleting a line, it is removed from the state [0] Solution ======== We simply need to check that the line exists --- [0]: https://github.com/odoo/enterprise/blob/5ef4a85febcde0a690a71cb1886a8a74daf31f47/stock_barcode/static/src/models/barcode_model.js#L390 opw-3688415 Forward-Port-Of: odoo/enterprise#58227 Forward-Port-Of: odoo/enterprise#57691
Currently in Odoo on the Swiss Balance Sheet: 1. Reserven und Jahresgewinn oder Jahresvelust (Main Group) (Reserves and profit or loss for the year) 1.1 Gesetzliche Reserven (Legal Reserves) (2950) 1.1.1 Accounts 2900-2991 What they expect for CH: 1. Reserven und Jahresgewinn oder Jahresvelust (Main Group) (Reserves and profit or loss for the year) 1.1 Gesetzliche Reserven (Legal Reserves) (2950) 1.1.1 Accounts 2900-2991 1.2 Test: Jahresgewinn oder Verlust (Profit or loss for the year (A
Original PR description
Currently in Odoo on the Swiss Balance Sheet: 1. Reserven und Jahresgewinn oder Jahresvelust (Main Group) (Reserves and profit or loss for the year) 1.1 Gesetzliche Reserven (Legal Reserves) (2950) 1.1.1 Accounts 2900-2991 What they expect for CH: 1. Reserven und Jahresgewinn oder Jahresvelust (Main Group) (Reserves and profit or loss for the year) 1.1 Gesetzliche Reserven (Legal Reserves) (2950) 1.1.1 Accounts 2900-2991 1.2 Test: Jahresgewinn oder Verlust (Profit or loss for the year (Annual profit and loss) 1.2.1 Accounts 2992-2999 opw-3668192 Forward-Port-Of: odoo/enterprise#58178
Before this commit: Portal users could access template buttons even though they did not possess any templates, leading to undesired visibility. After this commit: Following this commit, template buttons will no longer be visible to portal users, ensuring appropriate access restrictions. Task-3758669 Forward-Port-Of: odoo/enterprise#57772
Original PR description
Before this commit: Portal users could access template buttons even though they did not possess any templates, leading to undesired visibility. After this commit: Following this commit, template buttons will no longer be visible to portal users, ensuring appropriate access restrictions. Task-3758669 Forward-Port-Of: odoo/enterprise#57772
This commit improves the '_get_social_stream_post' method to make it use a complete domain instead of relying on pathing through the stream, then the account, then the media (= 3 records fetch), to get the media type. This will save a lot of requests as it is a central method used in the controllers of all social media implementations. Forward-Port-Of: odoo/enterprise#58286
Original PR description
This commit improves the '_get_social_stream_post' method to make it use a complete domain instead of relying on pathing through the stream, then the account, then the media (= 3 records fetch), to get the media type. This will save a lot of requests as it is a central method used in the controllers of all social media implementations. Forward-Port-Of: odoo/enterprise#58286
The confirmation page wasn't displayed and the order wasn't sent to the preparation display when confirming an order with a total of 0. Now the confirmation page is displayed and the order is send to the preparation display when the order is confirmed regardless of the total amount. Forward-Port-Of: odoo/enterprise#58348
Original PR description
The confirmation page wasn't displayed and the order wasn't sent to the preparation display when confirming an order with a total of 0. Now the confirmation page is displayed and the order is send to the preparation display when the order is confirmed regardless of the total amount. Forward-Port-Of: odoo/enterprise#58348