Monday, July 22, 2024
24 changes · master
Enhancements to existing features
Several payroll, accounting report, and web export areas were updated to use newer CSV handling behind the scenes. This reduces future maintenance risk and improves portability across server environments without changing the day-to-day user experience.
The documents-to-dashboard modal now shows placeholder guidance for choosing a dashboard section. This helps users understand what to select and reduces confusion when adding document content to dashboards.
Original PR description
Added a placeholder for the dashboard section in the modal template to guide users in selecting a section. Task: 3918035
Adds a clear connection status for IoT boxes using websockets, making it easier to see whether a box is actively connected. This helps teams diagnose report printing issues faster without digging into technical connection details.
Original PR description
Before this PR, there was no easy way to identify if an IoT box was connected with a websocket, potentially making debugging report printing difficult. This PR adds an `is_websocket_active` field to the IoT box model, which defaults to False but is set to True when it subscribes to the websocket. If the websocket is closed by Odoo, it is set to False again. Community PR: https://github.com/odoo/odoo/pull/173286 Task ID: 4045291
The expense app’s “Try Sample Receipt” option is now available regardless of a user’s access rights, making the onboarding experience more consistent. Tour instruction text was also updated to make the guided experience clearer for users.
Original PR description
* `Try Sample Receipt` button is available whatever the access rights. * Modify some text in tours instructions. task-3859580 Odoo PR: https://github.com/odoo/odoo/pull/164373
The accounting dashboard no longer shows separate expense-related warnings because the same journal entries are already covered by vendor bill warnings. This reduces duplicate alerts and helps accounting users focus on the most relevant dashboard items.
Original PR description
This commit remove the warnings we have on the accounting dashboard, as the journals entries are already included in the vendor bills warnings. task:3877069
Resolved issues and error corrections
Fixes an installation error in the Swedish Point of Sale localization caused by an outdated daily sales report reference. Businesses using Swedish POS can install and use the module without being blocked by this report template issue.
Original PR description
### Steps to reproduce:
- Install pos_l10n_se
- the error `Element '<xpath expr="//div[hasclass('page')]">' cannot be located in parent view`
### Investigation:
- the reason for the error is that the `pos_daily_reports.xml` in `pos_l10n_se` refers to the no longer relevant `report_saledetails` template as it has been updated in [b3a6688a711a9229c7bfca60adf9594ad23a952d](https://github.com/odoo/odoo/pull/171383/commits)Code cleanup and technical improvements
This update strengthens an internal accounting test so it will catch accidental changes to the signature field name. It helps protect the reliability of the signature-related accounting workflow without changing how users interact with the system.
Original PR description
The aim of this commit is to ensure the test fail in case the sign_signature field gets renammed. Originally, it was made to avoid a query but it is insignificant. task: none
Miscellaneous changes
This addresses several issues: - on 'register_consumed_materials' & 'register_byproducts' quality checks, the quantity entered and the selected lot were not saved - make this view clearer by separating the product and the other fields - 'print' & 'next' barcode triggers were sometimes capitalized, making them inoperant - fix component remaining quantity when no producing quantity has been set - generate a new pdf for barcodes: add print barcode & new ghostscript version seems t
Original PR description
This addresses several issues: - on 'register_consumed_materials' & 'register_byproducts' quality checks, the quantity entered and the selected lot were not saved - make this view clearer by separating the product and the other fields - 'print' & 'next' barcode triggers were sometimes capitalized, making them inoperant - fix component remaining quantity when no producing quantity has been set - generate a new pdf for barcodes: add print barcode & new ghostscript version seems to solve some erratic scanning problems task: 3987346 Forward-Port-Of: odoo/enterprise#66863 Forward-Port-Of: odoo/enterprise#65396
A test tour in Website Studio was made more precise so it waits for the right page update before continuing. This reduces false failures in automated checks and helps keep releases stable without changing user-facing behavior.
Original PR description
in tour engine, we listen for mutations in the DOM in order to look for the element pointed to by the "trigger". If it is found, we execute run(). In this tour, the div[name='name_slugified'] element is found even before the textContent modifications have been made. To resolve the problem, simply be more precise in the trigger selector. It should be noted that we can therefore remove the first assertion in run() which amounts to doing exactly the same thing as the trigger.
This update restores the date filter behavior in the Mexican closing reports after a broader reporting change left this module out. Users working with these reports should now see date filtering work consistently with the rest of the accounting reports.
Original PR description
The commit 6fe06c57fa7d4bce9ad9a9df0f773678047b9d06 changed the way the date filter works in the account reports. During the change, it forgot to apply the change to this niche localisation module.
This update corrects several internal filters and default values across multiple Odoo apps so they no longer require unnecessary processing. It should make these screens and automated rules behave more consistently without changing day-to-day workflows.
…invoices Steps to Reproduce on Runbot: 1. Set up AvaTax in Accounting settings 2. Make sure that the “Use AvaTax API” field is checked for the fiscal position named “Automatic Tax Mapping (AvaTax)” 3. Go to “Tax Groups” and for the record called “Tax 15%”, add “Test” to the field called “Preceding Subtotal” 4. Go to the Product Category called “All” and choose any selection for the field called “AvaTax Category” 5. Make an invoice and add the fiscal position named “Automatic Tax Mappi
Original PR description
…invoices Steps to Reproduce on Runbot: 1. Set up AvaTax in Accounting settings 2. Make sure that the “Use AvaTax API” field is checked for the fiscal position named “Automatic Tax Mapping (AvaTax)”…
…invoices Steps to Reproduce on Runbot: 1. Set up AvaTax in Accounting settings 2. Make sure that the “Use AvaTax API” field is checked for the fiscal position named “Automatic Tax Mapping (AvaTax)” 3. Go to “Tax Groups” and for the record called “Tax 15%”, add “Test” to the field called “Preceding Subtotal” 4. Go to the Product Category called “All” and choose any selection for the field called “AvaTax Category” 5. Make an invoice and add the fiscal position named “Automatic Tax Mapping (AvaTax)” 6. Save then print the invoice. Notice on the printed invoice that above the box called “Total”, the box called “Untaxed Amount” shows up with no tax box. 7. Uncheck the “Use AvaTax API” field for the fiscal position named “Automatic Tax Mapping (AvaTax)” (This step is basically the inverse of step 2) 8. Print the invoice again and notice this time that the box will instead be called “Test” (which we set in step 3) and that a box showing the tax amount will show up. This commit fixes the issue so that the value in "Preceding subtotal" is shown for printed Avatax invoices too. opw-4027280 Forward-Port-Of: odoo/enterprise#66932
When `industry_fsm` is installed, the form of `project.project` contains a section `Field Service` with only one setting (`is_fsm`). This option is only visible in only visible in debug mode, so the whole section should be displayed only under this conditon. => The group `base.group_no_one` has been added to the section. When `industry_fsm_report` is installed, another setting appears under that section (`worksheet_template_id`), so the section should be displayed. => The group that is adde
Original PR description
When `industry_fsm` is installed, the form of `project.project` contains a section `Field Service` with only one setting (`is_fsm`). This option is only visible in only visible in debug mode, so the whole section should be displayed only under this conditon. => The group `base.group_no_one` has been added to the section. When `industry_fsm_report` is installed, another setting appears under that section (`worksheet_template_id`), so the section should be displayed. => The group that is added in `industry_fsm` is removed then. task-3916982 Forward-Port-Of: odoo/enterprise#62270
How to reproduce (on 17.0 onwards): - Helpdesk -> new ticket form - set the name of the ticket (do not save the record) - then, set a partner to a existing partner - The display_name on the top displays 'name - #False' Expeceted behavior: - instead of displaying 'name - #False', it should display 'name' if the ticket_ref is not defined yet. After this commit, the display_name only displays the ticket_ref (#ID) if it exists. Test have been added for this purpose. Task: 3893076 Forw
Original PR description
How to reproduce (on 17.0 onwards): - Helpdesk -> new ticket form - set the name of the ticket (do not save the record) - then, set a partner to a existing partner - The display_name on the top displays 'name - #False' Expeceted behavior: - instead of displaying 'name - #False', it should display 'name' if the ticket_ref is not defined yet. After this commit, the display_name only displays the ticket_ref (#ID) if it exists. Test have been added for this purpose. Task: 3893076 Forward-Port-Of: odoo/enterprise#66471
Problem --- When a stock picking is clicked from the barcode view, its responsible is always automatically assigned to the current user. Fix --- assign current user only if they change anything (validate, edit a line, etc) but not if they just look. opw-3878484 Forward-Port-Of: odoo/enterprise#66897 Forward-Port-Of: odoo/enterprise#61456
Original PR description
Problem --- When a stock picking is clicked from the barcode view, its responsible is always automatically assigned to the current user. Fix --- assign current user only if they change anything (validate, edit a line, etc) but not if they just look. opw-3878484 Forward-Port-Of: odoo/enterprise#66897 Forward-Port-Of: odoo/enterprise#61456
To reproduce: Create a branch for your company On this branch, create an overdue invoice for a partner. Change company for the parent company. Go to Follow-up Reports Go on this partner. You see the invoice appearing in the list Click on Follow-up and print => The pdf does not contain the invoice from the branch The issue is that we check on company and not on the company and branches. opw-3988003 Forward-Port-Of: odoo/enterprise#66896
Original PR description
To reproduce: Create a branch for your company On this branch, create an overdue invoice for a partner. Change company for the parent company. Go to Follow-up Reports Go on this partner. You see the invoice appearing in the list Click on Follow-up and print => The pdf does not contain the invoice from the branch The issue is that we check on company and not on the company and branches. opw-3988003 Forward-Port-Of: odoo/enterprise#66896
With task-3336242, the control panel's dropdown button's display condition was changed from <= xl display to <= md display. Hence, this PR changes the display condition of buttons in the planning gantt view to align with this new behavior. The bootstrap classes that were used to attain this effect are now removed, replaced by a t-if="env.isSmall". This allows us to have only one of the two implementation present in the dom, and to change the display condition to <= md. task-4005521 Forwar
Original PR description
With task-3336242, the control panel's dropdown button's display condition was changed from <= xl display to <= md display. Hence, this PR changes the display condition of buttons in the planning gantt view to align with this new behavior. The bootstrap classes that were used to attain this effect are now removed, replaced by a t-if="env.isSmall". This allows us to have only one of the two implementation present in the dom, and to change the display condition to <= md. task-4005521 Forward-Port-Of: odoo/enterprise#65301
The settle due accounts was not always shown on the partner screen. Now it's always shown, and when the user doesn't have any amount due the text changes to "Deposit Money" instead of "Settle Due Accounts" Steps to reproduce: ------------------- * Install pos_settle_due module * Open PoS session * Open partner list * Click on details for any partner with no due > Observation: The "Settle Due Accounts" button is missing Why the fix: ------------ We always show the button, but change
Original PR description
The settle due accounts was not always shown on the partner screen. Now it's always shown, and when the user doesn't have any amount due the text changes to "Deposit Money" instead of "Settle Due Accounts" Steps to reproduce: ------------------- * Install pos_settle_due module * Open PoS session * Open partner list * Click on details for any partner with no due > Observation: The "Settle Due Accounts" button is missing Why the fix: ------------ We always show the button, but change the text to better match the behavior. If there is no amount due the text says "Deposit Money" and when the user has some amount due it says "Settle Due Accounts" opw-3925397 Forward-Port-Of: odoo/enterprise#66768 Forward-Port-Of: odoo/enterprise#65762
Community: https://github.com/odoo/odoo/pull/173324 Design Themes: https://github.com/odoo/design-themes/pull/831 Forward-Port-Of: odoo/enterprise#66743
Original PR description
Community: https://github.com/odoo/odoo/pull/173324 Design Themes: https://github.com/odoo/design-themes/pull/831 Forward-Port-Of: odoo/enterprise#66743
Context: On an upgraded database we detected that the resource calendar inherited views where disabled, because they were not able to find parent element. The full timeline is as below: - 2021-01-01: commit odoo/enterprise@1d9fdd624497 introduced `hr_payroll.resource_calendar_view_tree` view - 2021-02-05: commit odoo/enterprise@0506d4e6fa18 introduced `hr_contract.resource_calendar_view_tree` view (with `contracts_count` field) - 2024-07-02: commit odoo/enterprise@1f03fb675922 updated
Original PR description
Context: On an upgraded database we detected that the resource calendar inherited views where disabled, because they were not able to find parent element. The full timeline is as below: - 2021-01-01:…
Context: On an upgraded database we detected that the resource calendar inherited views where disabled, because they were not able to find parent element. The full timeline is as below: - 2021-01-01: commit odoo/enterprise@1d9fdd624497 introduced `hr_payroll.resource_calendar_view_tree` view - 2021-02-05: commit odoo/enterprise@0506d4e6fa18 introduced `hr_contract.resource_calendar_view_tree` view (with `contracts_count` field) - 2024-07-02: commit odoo/enterprise@1f03fb675922 updated `hr_payroll.resource_calendar_view_tree` view to add a field after `contracts_count` field. For databases that were update with each individual changes (at specified date), the `hr_payroll` inherited view will have a lower id than the `hr_contract` one and as such will be applied before (considering the standard view order). And following commit odoo/enterprise@1f03fb675922 this will raise a ValidationErorr: `Element '<field name="contracts_count">' cannot be located in parent view` This commit update `hr_payroll.resource_calendar_view_tree` view to inherit from the view that really add the `contracts_count` field. Forward-Port-Of: odoo/enterprise#66913
Steps to Reproduce: ----------- Install the helpdesk_account and helpdesk_sale_timesheet module. Go to the ticket form view. Perform a refund or reverse action. Click on the 'Credit Notes' stat button. Observe that the list view of credit notes is empty. Cause: ---------- When the helpdesk_sale_timesheet module is installed, the action_view_invoices method gets overridden. Fix: --------- We have renamed the actions in the helpdesk_account module to avoid conflicts
Original PR description
Steps to Reproduce: ----------- Install the helpdesk_account and helpdesk_sale_timesheet module. Go to the ticket form view. Perform a refund or reverse action. Click on the 'Credit Notes' stat button. Observe that the list view of credit notes is empty. Cause: ---------- When the helpdesk_sale_timesheet module is installed, the action_view_invoices method gets overridden. Fix: --------- We have renamed the actions in the helpdesk_account module to avoid conflicts. task-3972344 Forward-Port-Of: odoo/enterprise#65859
Steps to reproduce: - Open planning app - Create a shift for user who has leave during the slot. - You will get an warning in the form view. Issue: - Warning is not aligned vertically Cause; - This is not issue of alignment but due to a empty div created for conflict slot warning. Solution: - A constraint to stop the empty div which causes alignment issues task-3888018 Forward-Port-Of: odoo/enterprise#62645
Original PR description
Steps to reproduce: - Open planning app - Create a shift for user who has leave during the slot. - You will get an warning in the form view. Issue: - Warning is not aligned vertically Cause; - This is not issue of alignment but due to a empty div created for conflict slot warning. Solution: - A constraint to stop the empty div which causes alignment issues task-3888018 Forward-Port-Of: odoo/enterprise#62645
Before this commit, in about 8% of the time for some test tours, some edition of the report was triggered before the OdooEditor had a chance to start, so the concerned step failed. After this commit, there is no such race condition, as we add OdooEditor's specific class to the step selectors. runbot-error-29949 (and all linked error) Forward-Port-Of: odoo/enterprise#66886 Forward-Port-Of: odoo/enterprise#66815
Original PR description
Before this commit, in about 8% of the time for some test tours, some edition of the report was triggered before the OdooEditor had a chance to start, so the concerned step failed. After this commit, there is no such race condition, as we add OdooEditor's specific class to the step selectors. runbot-error-29949 (and all linked error) Forward-Port-Of: odoo/enterprise#66886 Forward-Port-Of: odoo/enterprise#66815
This commit adds the missing neutralization necessary for the l10n_fr_reports module introduced in 06f32096749a8df29b248f29698226cf996e9106 The purpose of the standard neutralization framework is to allow us to create database copies that will not interact with external systems in ways that could impact the production database (or if it is not possible to prevent the interactions, make sure that they are benign or won't result in actual changes), or impact the customers of the operator of th
Original PR description
This commit adds the missing neutralization necessary for the l10n_fr_reports module introduced in 06f32096749a8df29b248f29698226cf996e9106 The purpose of the standard neutralization framework is to allow us to create database copies that will not interact with external systems in ways that could impact the production database (or if it is not possible to prevent the interactions, make sure that they are benign or won't result in actual changes), or impact the customers of the operator of the production database. This is mainly useful to allow safe support investigation on database duplicates. opw-3928199 Forward-Port-Of: odoo/enterprise#66838