Friday, August 2, 2024
37 changes
17 changes
Resolved issues and error corrections
Mass mailing smart buttons now show activity only for the specific mailing being viewed, rather than totals from all mailings in the database. This gives users accurate counts and prevents confusion when assessing an individual campaign's performance.
Original PR description
The smart buttons on mass mailings were tracking all mailing traces on the database instead of only mailing traces belonging to the mass mailing in question. Adding a filter on each of these cases to only track traces belonging to the mass mailing in question fixes this issue. opw-3950732 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Miscellaneous changes
Before this commit, when message author is too long, it displays a horizontal scrollbar in a chat window. Steps to reproduce: - Rename Demo User with a very long name - As Mitchell Admin, open a chat window DM with former Demo User There was a `text-truncate` to manage overflow, but this didn't work and instead put an implicit `overflow-auto` which causes this horizontal scrollbar as a result. `text-truncate` is actually not good even if it worked, because this would mean the name i
Original PR description
Before this commit, when message author is too long, it displays a horizontal scrollbar in a chat window. Steps to reproduce: - Rename Demo User with a very long name - As Mitchell Admin, open a chat…
Before this commit, when message author is too long, it displays a horizontal scrollbar in a chat window. Steps to reproduce: - Rename Demo User with a very long name - As Mitchell Admin, open a chat window DM with former Demo User There was a `text-truncate` to manage overflow, but this didn't work and instead put an implicit `overflow-auto` which causes this horizontal scrollbar as a result. `text-truncate` is actually not good even if it worked, because this would mean the name is not fully visible. And adding a `title` with full name adds a floating UI elements, which is bothersome. We should not be afraid of default wrap behavior when the text is long. This commit fixes the issue by simply removing `text-truncate`, which makes the text wrap when it's too long. Before / After   Forward-Port-Of: odoo/odoo#175056 Forward-Port-Of: odoo/odoo#174954
Before this commit, selecting a product on a vendor bill line would set the product sale uom as the line uom by default. This behavior was changed to set the product purchase uom as the line uom by default. The default uom behavior on Vendor Bills lines should be aligned with the default uom behavior on Purchase orders. task-4012191 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#175235 Forward-Port-Of: odoo/odoo#17
Original PR description
Before this commit, selecting a product on a vendor bill line would set the product sale uom as the line uom by default. This behavior was changed to set the product purchase uom as the line uom by default. The default uom behavior on Vendor Bills lines should be aligned with the default uom behavior on Purchase orders. task-4012191 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#175235 Forward-Port-Of: odoo/odoo#172223
to reproduce: ============= - install the module l10n_fr_hr_holidays - create calendar for company Mon -> Fri 9:00 -> 12:00, 13:00 -> 18:00 - create calendar for employee Mon -> Fri 8:00 -> 12:00, 14:00 -> 17:00 - change `request_unit` for the paid time off to `half_day` - take a a monday off for the employee -> the duration is 0.9 days instead of 1 day Problem: ======== we compute the duration of the leave using the hours from the employee calendar but based on the company calendar,
Original PR description
to reproduce: ============= - install the module l10n_fr_hr_holidays - create calendar for company Mon -> Fri 9:00 -> 12:00, 13:00 -> 18:00 - create calendar for employee Mon -> Fri 8:00 -> 12:00, 14:00 -> 17:00 - change `request_unit` for the paid time off to `half_day` - take a a monday off for the employee -> the duration is 0.9 days instead of 1 day Problem: ======== we compute the duration of the leave using the hours from the employee calendar but based on the company calendar, where the day of the employee ends at 17:00 but the day of the company ends at 18:00, so this difference is impacting the duration of the leave Solution: ========= when computing the duration of the leave, we extend the hours of start and end of the day to the company calendar. opw-3898282 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#174841
### Steps to reproduce: - Create a product tracked by lot with a BOM - Create and confirm an MO for 1 unit of that product - Assign a producing lot via the [+] smart button - Change the quantity producing to 2 and produce all > Go on the Traceability Report an additional move_line associated to your MO finished move was created and associated to the producing lot. - Unlock the MO and change the quantity producing to 3 > Go on the Traceability Report an additional move_line associated t
Original PR description
### Steps to reproduce: - Create a product tracked by lot with a BOM - Create and confirm an MO for 1 unit of that product - Assign a producing lot via the [+] smart button - Change the quantity…
### Steps to reproduce: - Create a product tracked by lot with a BOM - Create and confirm an MO for 1 unit of that product - Assign a producing lot via the [+] smart button - Change the quantity producing to 2 and produce all > Go on the Traceability Report an additional move_line associated to your MO finished move was created and associated to the producing lot. - Unlock the MO and change the quantity producing to 3 > Go on the Traceability Report an additional move_line associated to your MO finished move was created and associated but the producing lot **is missing** ### Cause of the issue: Changing the quantity producing on the MO and then marking the MO as done will trigger a call of the `_post_inventory` method. During this call the quantity of the finished move are adapted according to the quantity producing of the MO by these lines: https://github.com/odoo/odoo/blob/4a388236ce49e03e3a32447f8fa6ed073a09126b/addons/mrp/models/mrp_production.py#L1700-L1702 The change of quantity will trigger a `_process_increase` of the qties of the finished move and will create an additional stock move line for the remaining qties: https://github.com/odoo/odoo/blob/4a388236ce49e03e3a32447f8fa6ed073a09126b/addons/stock/models/stock_move.py#L2051-L2055 and the producing lot is added to this new line just after because of these lines: https://github.com/odoo/odoo/blob/4a388236ce49e03e3a32447f8fa6ed073a09126b/addons/mrp/models/mrp_production.py#L1702-L1705 https://github.com/odoo/odoo/blob/f80094f43bcc464cc99fba6aa59f64659fe659b6/addons/mrp/models/mrp_production.py#L2780-L2784 By contrast, if you modify the quantity producing after the MO is marked as done, the quantity of the finished_move is modified dirrectly by the ovewrite of the `write` method of the `mrp_production` model: https://github.com/odoo/odoo/blob/4a388236ce49e03e3a32447f8fa6ed073a09126b/addons/mrp/models/mrp_production.py#L898-L899 This will also trigger a `_process_increase` but it will not add the `lot_id` to the new sml as in the `_post_inventory` call. opw-4043539 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#175099 Forward-Port-Of: odoo/odoo#174489
Current behavior before PR: -Resized column widths were lost when moving the top row down or the second row up. -This happened because the new widths after resizing were only applied to the `<td>` elements of the first `<tr>.` Desired behavior after PR is merged: -When moving the top row down or second row up, column widths are copied from the first row to the second row. -Tables don't lose resizing after moving the first row up or down. task-4019025 --- I confirm I hav
Original PR description
Current behavior before PR: -Resized column widths were lost when moving the top row down or the second row up. -This happened because the new widths after resizing were only applied to the `<td>` elements of the first `<tr>.` Desired behavior after PR is merged: -When moving the top row down or second row up, column widths are copied from the first row to the second row. -Tables don't lose resizing after moving the first row up or down. task-4019025 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#174429 Forward-Port-Of: odoo/odoo#171695
This is a backport of #150175 This commit will add the basic package for the Cyprus localization. - Default Settings - CAO - Taxes - Fiscal positions - Tax Report Task: 3640438 Related: odoo/enterprise#54620 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#161488
Original PR description
This is a backport of #150175 This commit will add the basic package for the Cyprus localization. - Default Settings - CAO - Taxes - Fiscal positions - Tax Report Task: 3640438 Related: odoo/enterprise#54620 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#161488
l10n_in_* = l10n_in_edi,l10n_in_edi_ewaybill In the context of Indian EDI and e-waybill regulations, the cancellation service fails if more than 24 hours have passed since the document was submitted. However, these documents can still be canceled through other channels. To ensure users can cancel their invoices in Odoo even if the initial cancellation request fails, we've implemented a new feature. A 'Force Cancel' button has been added to the EDI cancellation flow. If a cancellation
Original PR description
l10n_in_* = l10n_in_edi,l10n_in_edi_ewaybill In the context of Indian EDI and e-waybill regulations, the cancellation service fails if more than 24 hours have passed since the document was submitted. However, these documents can still be canceled through other channels. To ensure users can cancel their invoices in Odoo even if the initial cancellation request fails, we've implemented a new feature. A 'Force Cancel' button has been added to the EDI cancellation flow. If a cancellation request fails, the user can click this button to cancel the invoice immediately. Additionally, we have provided a hook that can be inherited to specify whether this force-cancellation option is applicable to each invoice. **task**-3997285 Forward-Port-Of: odoo/odoo#170257
Before this commit: - There was no option to hide the time part from the datetime widget. After this commit: - A 'show_time' option is added to the datetime widget. When set to false, it hides the time part from the datetime. Enterprise PR: https://github.com/odoo/enterprise/pull/67258 Task-3698841 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#175257 Forward-Port-Of: odoo/odoo#161705
Original PR description
Before this commit: - There was no option to hide the time part from the datetime widget. After this commit: - A 'show_time' option is added to the datetime widget. When set to false, it hides the time part from the datetime. Enterprise PR: https://github.com/odoo/enterprise/pull/67258 Task-3698841 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#175257 Forward-Port-Of: odoo/odoo#161705
In no-demo tests, there is no link tracker, so the expected length is not max+1 but 3. Follow up of e5b88d3a Task-3502174 Forward-Port-Of: odoo/odoo#174391 Forward-Port-Of: odoo/odoo#173303
Original PR description
In no-demo tests, there is no link tracker, so the expected length is not max+1 but 3. Follow up of e5b88d3a Task-3502174 Forward-Port-Of: odoo/odoo#174391 Forward-Port-Of: odoo/odoo#173303
When importing an invoice in account_edi_ubl_cii there is a function `_correct_invoice_tax_amount` that if there is a rounding error on the tax line then it would correct it. That method was using tax_line_id but as the context manager was placed in a scope above, dynamic lines wouldn't be still generated and so wouldn't work. The fix was to remove the context manager from above and replace it in the actual scope. This had to ensure that all other import methods such as it_edi, es_edi, ... wo
Original PR description
When importing an invoice in account_edi_ubl_cii there is a function `_correct_invoice_tax_amount` that if there is a rounding error on the tax line then it would correct it. That method was using tax_line_id but as the context manager was placed in a scope above, dynamic lines wouldn't be still generated and so wouldn't work. The fix was to remove the context manager from above and replace it in the actual scope. This had to ensure that all other import methods such as it_edi, es_edi, ... would have the context manager in their import functions. opw-4019601 related: https://github.com/odoo/enterprise/pull/67002 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#173843
Behaviour before this change ----- In the "My time off" dashboard, an user belonging to "Administrator" or "Officer" groups will see a list of all public holidays regardless of which working hours they are defined for. Confirmed to be unintended behaviour by HR PO (gmf). Behaviour after this change ----- The list of public holidays displayed on the time off dashboard is the same for all users. The same change is also applied to stress days. opw-4019868 Forward-Port-Of: odoo/odoo#175
Original PR description
Behaviour before this change ----- In the "My time off" dashboard, an user belonging to "Administrator" or "Officer" groups will see a list of all public holidays regardless of which working hours they are defined for. Confirmed to be unintended behaviour by HR PO (gmf). Behaviour after this change ----- The list of public holidays displayed on the time off dashboard is the same for all users. The same change is also applied to stress days. opw-4019868 Forward-Port-Of: odoo/odoo#175075 Forward-Port-Of: odoo/odoo#173205
Steps to reproduce the bug: - Create a maintenance request: - repeat_type: forever, - Maintenance Type: preventive, - recurring_maintenance: True, - Move this request to the 'done' stage. Problem: A new maintenance request is duplicated but with the same last stage of this maintenance request opw-4060845 Forward-Port-Of: odoo/odoo#174411
Original PR description
Steps to reproduce the bug: - Create a maintenance request: - repeat_type: forever, - Maintenance Type: preventive, - recurring_maintenance: True, - Move this request to the 'done' stage. Problem: A new maintenance request is duplicated but with the same last stage of this maintenance request opw-4060845 Forward-Port-Of: odoo/odoo#174411
Added spacing between label and field tags in setting --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#175036 Forward-Port-Of: odoo/odoo#174972
Original PR description
Added spacing between label and field tags in setting --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#175036 Forward-Port-Of: odoo/odoo#174972
### [FIX] hr_recruitment: use context lang for partner creation When partner is created from Applicant's email_from inverse, in a situation when job application is submitted, we should use context lang for him. Useful when submiting application for multi-lang website and becuase partner's lang is used to send appropriate translations of recruitment templates. ### [Reproduce Original Error] - Install website,hr_recruitment - Set couple of languages on the website (e.g., en_US as def
Original PR description
### [FIX] hr_recruitment: use context lang for partner creation When partner is created from Applicant's email_from inverse, in a situation when job application is submitted, we should use context lang for him. Useful when submiting application for multi-lang website and becuase partner's lang is used to send appropriate translations of recruitment templates. ### [Reproduce Original Error] - Install website,hr_recruitment - Set couple of languages on the website (e.g., en_US as default, es_MX as the second language). - In incognito, using non-default language, apply for some position (url: /es_MX/jobs ) - BUG: The email sent to the applicant is in the default language opw-3984176 Forward-Port-Of: odoo/odoo#173212
### Steps to reproduce: - In the settings enable: - Multi-Step Routes - Batch Transfers > Wave Transfers - Inventory > operations > Transfers > Internal Transfer - Create a transfer for 10 units of a product P and mark as to do. - Set the quantity of P to 5 units on the move. - Go back to the list view of internal transfers - Select the box of the internal transfer linked to your partial move - Click on the wheel Action and Add to wave > add to a new wave transfer - Select your pic
Original PR description
### Steps to reproduce: - In the settings enable: - Multi-Step Routes - Batch Transfers > Wave Transfers - Inventory > operations > Transfers > Internal Transfer - Create a transfer for 10 units of a…
### Steps to reproduce: - In the settings enable: - Multi-Step Routes - Batch Transfers > Wave Transfers - Inventory > operations > Transfers > Internal Transfer - Create a transfer for 10 units of a product P and mark as to do. - Set the quantity of P to 5 units on the move. - Go back to the list view of internal transfers - Select the box of the internal transfer linked to your partial move - Click on the wheel Action and Add to wave > add to a new wave transfer - Select your picking to add to the operations and Add to wave #### > A new picking is created and added to the wave transfer while your old picking is emptied and displayed as a draft picking. ### Cause of the issue: During the call of the `_add_to_wave` method, only the picking whose moves quantities completely match the demands are linked to the wave transfer because of these lines: https://github.com/odoo/odoo/blob/4ac6722aec4a638882c41f1df563da6f051849ad/addons/stock_picking_batch/models/stock_move_line.py#L58-L66 In the rest of the call, a new picking linked to all the partially assigned moves of our picking will be created in the wave transfer: https://github.com/odoo/odoo/blob/4ac6722aec4a638882c41f1df563da6f051849ad/addons/stock_picking_batch/models/stock_move_line.py#L68-L89 This action unlinks them from our original picking. However, they will not be reassigned to our original picking during the `action_confirm` of the wave transfer since the original picking was not linked to the batch. This leaves the picking empty recomputing its state to be 'draft'. ### Fix: The lines that prevent the original picking from being linked to the wave have been introduced by commit 8d0e49c in order to prevent the picking from being linked if at least one of its moves is not be added to the wave transfer (i.e. when the associated quantity is 0). Thus, the picking should still be linked to the wave transfer if all its moves are partially assigned. opw-3985566 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#169987
### Steps to reproduce: - Install the 'l10n_sa' module and switch to a saudi company - Install the Arabic language - Go in Accounting > Customers > Invoices and create a new one - Add an internal note with a list (using /) - Add a translation in arabic with the "EN" button - Click Preview - The points of the list appear in the middle of the page ### Cause: The lists are not adapted to be displayed from right to left. ### Solution: Add the option `dir="rtl"` in the span of the Arab
Original PR description
### Steps to reproduce: - Install the 'l10n_sa' module and switch to a saudi company - Install the Arabic language - Go in Accounting > Customers > Invoices and create a new one - Add an internal note with a list (using /) - Add a translation in arabic with the "EN" button - Click Preview - The points of the list appear in the middle of the page ### Cause: The lists are not adapted to be displayed from right to left. ### Solution: Add the option `dir="rtl"` in the span of the Arabic text to make the lists appear the right way. opw-4043175 Forward-Port-Of: odoo/odoo#175333 Forward-Port-Of: odoo/odoo#174541
18 changes
Enhancements to existing features
Knowledge articles now use Odoo’s standard message posting flow instead of the older portal-specific approach. This helps keep article discussions aligned with the main messaging system and should make future maintenance and consistency easier.
Original PR description
Part of task-2828744 [Related Odoo PR](https://github.com/odoo/odoo/pull/172475)
This update refreshes the spreadsheet component so pivot tables keep their table type aligned with the underlying pivot structure. It helps ensure spreadsheet pivot views behave consistently and reduces the risk of mismatched reporting layouts.
Original PR description
adapt test for https://github.com/odoo/o-spreadsheet/commit/0f46e97b5 [IMP] pivots: table type synced with pivot structure Task: 4039655
The event website navigation has been adjusted so social wall options are grouped under the Community menu. This makes the event site structure clearer and helps visitors find community-related content more naturally.
Original PR description
- regroup Social Menu under Community Task-3661323
Resolved issues and error corrections
Operation type names in the Brazilian AvaTax localization can now appear in the user's language. This fixes a missing translation setting, improving clarity for Portuguese and multilingual users without changing tax behavior.
Original PR description
translate=True was forgotten when the l10n_br.operation.type model was added. Since it requires a database change it can only be done in master. Thanks to TIC for notifying us. task-3803424
This fixes an issue in Point of Sale where connected weighing scales could reference the wrong IoT device address. It helps ensure scale integrations connect reliably during checkout, reducing disruption for stores using IoT hardware.
Code cleanup and technical improvements
This update standardizes how several Odoo Enterprise apps send real-time messages to users. It is an internal cleanup that should make notifications more consistent and easier to maintain without changing day-to-day workflows.
Original PR description
\* = account_online_synchronization, delivery_iot, l10n_uk_reports, spreadsheet_edition, voip, website_helpdesk_livechat, whatsapp Enterprise counter-part. https://github.com/odoo/odoo/pull/175205
This update removes an older behind-the-scenes dependency from the backend interface, including areas such as Studio report editing and related tests. It helps modernize the codebase and reduce reliance on legacy technology without changing expected business workflows.
Original PR description
Task ID: 3981226
This update removes an older shared web component from backend assets and adjusts Studio report editing and navigation tests accordingly. The change is mainly internal, helping keep the system lighter and easier to maintain without changing day-to-day user workflows.
Original PR description
Task ID: 3981226
Miscellaneous changes
Steps to reproduce the bug: - Log in as Mitchell Admin. - Go to Work Centers > Assembly Line 1 > Select Mark Demo in the allowed employees. - Create a storable product P1 with BoM: - Components: Select any product. - Operation: OP1 in Assembly Line 1. - Create a manufacturing order to produce one unit of P1. - Try to start the work order with Mitchell from the form view. Problem: No user error is triggered when it should be. opw-4045726 Forward-Port-Of: odoo/enterprise#671
Original PR description
Steps to reproduce the bug:
- Log in as Mitchell Admin.
- Go to Work Centers > Assembly Line 1 > Select Mark Demo in the allowed employees.
- Create a storable product P1 with BoM:
- Components: Select any product.
- Operation: OP1 in Assembly Line 1.
- Create a manufacturing order to produce one unit of P1.
- Try to start the work order with Mitchell from the form view.
Problem:
No user error is triggered when it should be.
opw-4045726
Forward-Port-Of: odoo/enterprise#67194Resolving a field path to a usable string is globally useful for dynamic messages that cannot rely on qweb to format their output. The Model method introduced in whatsapp to do this is moved to mail so it can be used in other modules. task-3495279 Forward-Port-Of: odoo/enterprise#65046
Original PR description
Resolving a field path to a usable string is globally useful for dynamic messages that cannot rely on qweb to format their output. The Model method introduced in whatsapp to do this is moved to mail so it can be used in other modules. task-3495279 Forward-Port-Of: odoo/enterprise#65046
Steps to reproduce ================== - Go to Accounting > Customer Invoices - Open studio - Switch to the Reports tab - Open the Invoices report - Click on "Reset Report" a few times => Eventually, OdooEditor will crash with an error like `Cannot read properties of undefined (reading 'innerHTML')` Cause of the issue ================== `onIframeLoaded` was called before the default report has been loaded. Solution ======== only update the render key after the report
Original PR description
Steps to reproduce ================== - Go to Accounting > Customer Invoices - Open studio - Switch to the Reports tab - Open the Invoices report - Click on "Reset Report" a few times => Eventually, OdooEditor will crash with an error like `Cannot read properties of undefined (reading 'innerHTML')` Cause of the issue ================== `onIframeLoaded` was called before the default report has been loaded. Solution ======== only update the render key after the report has been reset opw-3821992 Forward-Port-Of: odoo/enterprise#67191
The product_pricing_ids didn't exclude archived pricelist which could lead to wrong price. While also displaying unnecessary data. opw-4053690 Forward-Port-Of: odoo/enterprise#67535
Original PR description
The product_pricing_ids didn't exclude archived pricelist which could lead to wrong price. While also displaying unnecessary data. opw-4053690 Forward-Port-Of: odoo/enterprise#67535
Currently, when printing reports using the iot, if we don't select a device when the wizard prompts ut to do so, nothing will be printed and it will be saved in the browser storage that no printer should print this report. Steps to reproduce: ------------------- * Connect the IOT to the db * In developper mode go to: **Settings** > **Technical** > **Actions** > **Reports** * Select `PDF Quote` for example and associate a printer * Go to the **Sale** App and select any quotation * Select
Original PR description
Currently, when printing reports using the iot, if we don't select a device when the wizard prompts ut to do so, nothing will be printed and it will be saved in the browser storage that no printer…
Currently, when printing reports using the iot, if we don't select a device when the wizard prompts ut to do so, nothing will be printed and it will be saved in the browser storage that no printer should print this report. Steps to reproduce: ------------------- * Connect the IOT to the db * In developper mode go to: **Settings** > **Technical** > **Actions** > **Reports** * Select `PDF Quote` for example and associate a printer * Go to the **Sale** App and select any quotation * Select the gear icon * Select **Print** > `PDF Quote` * Select `Print` without selecting a printer > Observation: Nothing is printed * Select **Print** > `PDF Quote` > Observation: Nothing is printed and the prompt does not appear Why the fix: ------------ The idea behind this fix is to make it mandatory to choose at least one of the devices on the wizard prompt. If at least one printer is selected we continue with the printing. If not, we put a notification on screen and don't do anything else. opw-4019575 Current behavior with the fix: --------------------------------------  Forward-Port-Of: odoo/enterprise#67579
Currently we just check whether the company has 'BE' fiscal country code. But this can be incorrect: We may want to create a report for a foreign VAT fiscal position. This situation can lead to a traceback (see below). After this commit we use the dedicated helper function `_get_report_country_code` to determine the right country code. Reproduce: 1. Install `l10n_be_reports` and `l10n_fr_reports` 2. On the Belgian company create a fiscal position with country 'France' and a 'Foreign Tax
Original PR description
Currently we just check whether the company has 'BE' fiscal country code. But this can be incorrect: We may want to create a report for a foreign VAT fiscal position. This situation can lead to a traceback (see below). After this commit we use the dedicated helper function `_get_report_country_code` to determine the right country code. Reproduce: 1. Install `l10n_be_reports` and `l10n_fr_reports` 2. On the Belgian company create a fiscal position with country 'France' and a 'Foreign Tax ID' 3. On the Belgian company open the tax report and select the French tax report 4. Click on the "Closing Entry" button to create a draft closing entry move 5. Try to post the move 6. Traceback (in which `l10n_be_reports_post_wizard` appears) task-4063968 Forward-Port-Of: odoo/enterprise#67548 Forward-Port-Of: odoo/enterprise#67122
When a user deletes buttons with sequences 0, 1, or 2, and buttons with sequences greater than 2 still exist, the template preview does not display any buttons as expected. Steps to produce: - Create a template with 5 buttons. - Delete the first 3 buttons (sequences 0, 1, and 2). - Preview the template. - No buttons will be shown in the preview. Problem: The template preview shows buttons based on their sequence field (0, 1, 2, etc.). When buttons with sequences 0, 1, and 2 are de
Original PR description
When a user deletes buttons with sequences 0, 1, or 2, and buttons with sequences greater than 2 still exist, the template preview does not display any buttons as expected. Steps to produce: - Create a template with 5 buttons. - Delete the first 3 buttons (sequences 0, 1, and 2). - Preview the template. - No buttons will be shown in the preview. Problem: The template preview shows buttons based on their sequence field (0, 1, 2, etc.). When buttons with sequences 0, 1, and 2 are deleted, and only buttons with higher sequences remain, none of the remaining buttons are displayed. Solution: Rather than rendering all buttons and displaying buttons based on sequence, render limited buttons based on the button length to achieve the same preview as Meta. This ensures that when buttons with lower sequences are deleted, the remaining buttons are still shown correctly in the preview. Forward-Port-Of: odoo/enterprise#66978
This commit fixes an issue with locked/readonly empty articles. If a user opens an article which is locked/readonly for them, when switching articles the browser will try to update the article's name. This operation is of course not possible, but this leads to the user not able to leave said article. This is caused by the update method on the record which sets it as dirty so that it can be saved when possible. In order to fix, this when the user has no write access on the article or if it is
Original PR description
This commit fixes an issue with locked/readonly empty articles. If a user opens an article which is locked/readonly for them, when switching articles the browser will try to update the article's name. This operation is of course not possible, but this leads to the user not able to leave said article. This is caused by the update method on the record which sets it as dirty so that it can be saved when possible. In order to fix, this when the user has no write access on the article or if it is locked, we return early so that the record doesn't set itself as dirty. task-4047722 Forward-Port-Of: odoo/enterprise#66589
Before this commit: --------------------------- - The booking information was displayed below the table, sometimes overlapping with other tables and not clearly indicating which table the booking was for. - The text color change based on the booking timings exceed and still not ordered. After this commit: ----------------------- - The booking information is shown directly on the table, replacing the customer count, making it clearer and easier to understand. - Now, making it more better
Original PR description
Before this commit: --------------------------- - The booking information was displayed below the table, sometimes overlapping with other tables and not clearly indicating which table the booking was for. - The text color change based on the booking timings exceed and still not ordered. After this commit: ----------------------- - The booking information is shown directly on the table, replacing the customer count, making it clearer and easier to understand. - Now, making it more better and text color will be red based on booking timing starts and still customer is not checked in. Related PR --------------- Community PR: https://github.com/odoo/odoo/pull/174210 Upgrade PR: https://github.com/odoo/upgrade/pull/6304 task: 4014060 Forward-Port-Of: odoo/enterprise#67160
Steps: ------- 1. go to any operations of th barcorde app 2. go to a specific line 3. change the quantity thanks to the +1 / -1 4. try to erase using backspace or the erase button Current behavior before PR: ------ We need several backspaces to erase the value Desired behavior after PR is merged: ------- If the value is '3' for example, only 1 backspace should be needed. Explanation: ----- Incrementing will set the precision to the value specified, which mean 3 is actually st
Original PR description
Steps: ------- 1. go to any operations of th barcorde app 2. go to a specific line 3. change the quantity thanks to the +1 / -1 4. try to erase using backspace or the erase button Current behavior…
Steps: ------- 1. go to any operations of th barcorde app 2. go to a specific line 3. change the quantity thanks to the +1 / -1 4. try to erase using backspace or the erase button Current behavior before PR: ------ We need several backspaces to erase the value Desired behavior after PR is merged: ------- If the value is '3' for example, only 1 backspace should be needed. Explanation: ----- Incrementing will set the precision to the value specified, which mean 3 is actually stored as 3.00 on the Digipad, but parsing it as a Number in `_notifyChanges` will remove these trailing zeros. One solution would be to pass the string to the ORM instead of passing it a number, but this has the disadvantages to set the value as 3.00 visually (so the user still need to delete multiple zeros). The solution adopted removes the trailing zeros. Side note: This does not fix the inconsitency where the value displayed is "3" when the Digipad value id "3.". opw-4061351 Forward-Port-Of: odoo/enterprise#67459 Forward-Port-Of: odoo/enterprise#67279
2 changes
Resolved issues and error corrections
The barcode command labels in the Manufacturing work order system have been updated from "CONTINUE/PAUSE" to "CONTINUE/START" for better clarity. This change improves the user experience by using more intuitive terminology for barcode-based operations in the manufacturing workflow.
Original PR description
Part of a UI task. Changed CONTINUE/PAUSE to CONTINUE/START Regenerated the PDF file task-id: 3646156 community: https://github.com/odoo/odoo/pull/171616
This update fixes an issue where delivery tests were failing when run without demo data. The tests were referencing a demo partner ('Deco Addict') that doesn't exist in no-demo environments. The fix ensures tests create the necessary partner data when needed, making the test suite more reliable across different configurations.
Original PR description
The Issue: Before this commit, the test always assumed the existence of the 'Deco Addict' partner. However, in the 'no demo' test, we run tests without demo data, so this partner does not exist. The Fix: Create the demo Partner runbot-58765