Daily updates from Odoo
Tuesday, September 17, 2024
27 changes · master
Enhancements to existing features
The webshop checkout and related sales tests were updated so upselling flows work correctly with Click & Collect orders. This helps ensure customers can choose store pickup while still seeing relevant product options, reducing friction during checkout.
Original PR description
See the community commit for more details. task-3626274 See also: - https://github.com/odoo/odoo/pull/174073 - https://github.com/odoo/upgrade/pull/6492
Mexican electronic invoices can now include state-specific local taxes in the correct dedicated section of the XML. This helps businesses in sectors such as construction, tourism, and services stay compliant when local tax rules vary by state.
Original PR description
[IMP] l10n_mx_edi: Add new cfdi line for local tax Local taxes are created by states in MX. Each state can have a different % of each tax. Some of the industries that need those taxes are: Construction, Tourism, and certain services industries. Those taxes are distributed in a different node with new attributes in the XML. We are adding new line for local taxes grouped by tax_group task-id#4033949 odoo-pr#https://github.com/odoo/odoo/pull/174336
US payslips now include a dedicated table showing leave accrual earned, used, and remaining for the current pay period. This helps employers meet US payroll disclosure requirements and gives employees clearer visibility into their time-off balances.
Original PR description
For the US, it is mandatory to have the accrual gains, usage and balance on the payslip. This adds a new table with the information for the current period. Task: 3993175
Appointment pricing now adjusts based on the number of expected attendees, so customers see booking fees and service prices that match the actual group size. Sales orders and invoices also use the attendee quantity, improving billing accuracy for capacity-based appointments.
Original PR description
*={_account_payment,_sale}
Purpose
=======
Increase the price based on how many guests are expected.
So that both the service and the booking fee is updated based on it.
Specifications
==============
1. Product price will be displayed with a dynamic label change based on 'resource_manage_capacity' field value.
2. Invoice and Order lines qty will be updated based on booking qty.
3. appointment_account_payment and website_appointment_sale flow have been adapted for price calculation
based on quantity.
Note:
```_verify_updated_quantity``` method from website_appointment_sale
is removed to achieve the purpose before it was written for handling the
one quantity of the product.
Task-3890987Manufacturing teams can now add components from the shop floor using the product catalog and see work instructions automatically when starting relevant work orders. Production planners can also set a batch size in the master production schedule so large manufacturing quantities are automatically split into manageable orders.
Original PR description
This PR adds several improvements to MRP workflows: #### Shop Floor: 1. When adding a component to an MO from the shop floor, the product catalog is opened instead of the existing wizard, similar to adding a component from the MO form. 2. When starting a work order that has steps, the instructions wizard is shown automatically, instead of having to click on it manually after starting the workorder. #### MPS: A new field is added to `mrp.production.schedule` model: `batch_size`. The field is shown and used only if the selected route is a manufacturing route. If this value is specified, the quantity of the generated manfacturing orders by MPS will be capped by this value, hence, the MOs will be automatically split in this case. Community PR: odoo/odoo#169258 Upgrade PR: odoo/upgrade#6186 Task-3962134
The Employee dashboard has been enhanced with additional graphs and related dashboard content. This gives HR teams a clearer visual overview of employee contract information, making it easier to spot trends and monitor key workforce data.
Original PR description
Add some graphs and other stuff in the Employee dashboard Task: 4074424
Payroll teams can now choose NACHA when creating payment reports from a payslip batch. This makes it easier to generate bank-ready payroll payment files directly from the payroll workflow, reducing manual steps for US payroll processing.
Original PR description
Add the option to pay through NACHA in the "Create Payment Report" wizard task-4123133
The HR and Employee apps receive usability improvements across forms, views, onboarding, and payroll-related information. Employees can now have a separate legal name for contracts and payroll documents, skills work better across languages, and onboarding/offboarding activities are routed more reliably through the management chain.
Original PR description
A rework of the UX/UI for parts of the HR/Employee app which includes: - Skills are now translatable, enabling the detection of skills on resumes written in languages other than English. - Improved…
A rework of the UX/UI for parts of the HR/Employee app which includes: - Skills are now translatable, enabling the detection of skills on resumes written in languages other than English. - Improved order on fields in employee form view. - Adding/improving placeholders for multiple fields. - Adding/improving/removing tooltips for multiple fields. - Adding/improving No Content helpers for multiple views to make the intention of the view clearer. - Adding and removing measurement fields for graph and pivot views to improve usability. - Spelling improvements. - Improved wording for multiple field strings. - Hiding buttons on employee form when employee is archived. - Creating activities on departments is now possible. - On/Off-boarding: If the employee/manager/coach is not linked to a user we now go up the chain of management until we find a manager linked to a user. This should allow a more seamless user experience. - Adding filter for employees in Contact app. - A new tab "Payroll" has been added in the Employee form view to gather all the payroll information. - A new field "Legal Name" has been added to accommodate employees whose legal names diverge from their preferred name. - Replacing the "Name" field with the "Legal Name" field in various payroll and contract situations. task-3930677
Field Service users can now preview, send, sign, and view task report details without installing Studio when they only need timesheets or time and materials. This makes core reporting workflows available to more service teams while keeping Studio-based worksheet customization separate.
Original PR description
* This commit aims at allowing the use the following features (in the task form view) of Field Service without needing Studio installed: - Sign & Send report buttons (in backend and in portal) - The…
* This commit aims at allowing the use the following features (in the task form view) of Field Service without needing Studio installed:
- Sign & Send report buttons (in backend and in portal)
- The Field Service Report without the worksheet section (in backend and in portal)
- The 'Customer Preview' stat button (in backend only)
- The 'View details' button of a task (in portal only)
* Beforehand, those features were all handled in industry_fsm_report, which requires Studio. We decided to separate those features in industry_fsm, industry_fsm_sale, industry_fsm_report and industry_fsm_sale_report modules.
- The rationale is that some users just need to send/sign FSM reports without needing the worksheet customization section requiring Studio (they might just need the 'Timesheets' and 'Time & Material sections in their reports').
We thus allow them to do so by not requiring the industry_fsm_report module to be able to use those features.
* The Field Service Report is composed of the following sections, each one is now handled by a different module:
- Time & Material: related to the products linked to the task, handled in industry_fsm_sale
- Timesheets: related to the timesheets linked to the task: handled in industry_fsm
- Worksheet: related to the custom worksheets created by the user (with Studio) and linked to the task, handled in industry_fsm_report
* Note that we have the following module dependencies:
```
industry_fsm
/ \
industry_fsm_sale industry_fsm_report
\ /
Industry_fsm_sale_report
```
* The Sign/Send buttons are now visible in the task form under the following conditions:
- In industry_fsm: invisible
- In industry_fsm_sale:
- Sign: Visible if the project allows 'Products on Tasks' AND (there are timesheets linked to the task OR there are products linked to the task) AND the report was not signed yet
- Visible in secondary if there are timesheets linked to the task OR there are products linked to the task
- Visible in primary if both are present
- Send: Visible if the project allows 'Products on Tasks' AND (there are timesheets linked to the task OR there are products linked to the task) AND the report was not sent yet
- Visible in secondary if there are timesheets linked to the task OR there are products linked to the task
- Visible in primary if both are present
- In industry_fsm_report:
- Sign: Visible if the project allows 'Worksheet' AND (there are timesheets linked to the task OR there are worksheets linked to the task) AND the report was not signed yet
- Visible in secondary if there are timesheets linked to the task OR there are worksheets linked to the task
- Visible in primary if both are present
- Send: Visible if the project allows 'Worksheet' AND (there are timesheets linked to the task OR there are worksheets linked to the task) AND the report was not sent yet
- Visible in secondary if there are timesheets linked to the task OR there are worksheets linked to the task
- Visible in primary if both present
- In industry_fsm_sale_report:
- Sign: Visible if (the project allows 'Worksheet' OR the project allows 'Products on Tasks') AND (there are timesheets linked to the task OR there are worksheets linked to the task OR there are products linked to the task) AND the report was not signed yet
- Visible in secondary if there are timesheets linked to the task OR there are worksheets linked to the task OR there are products linked to the task
- Visible in primary if all three are present
- Send: Visible if the (the project allows 'Worksheet' OR the project allows 'Products on Tasks') AND (there are timesheets linked to the task OR there are worksheets linked to the task OR there are products linked to the task) AND the report was not sent yet
- Visible in secondary if there are timesheets linked to the task OR there are worksheets linked to the task OR there are products linked to the task
- Visible in primary if all three are present
* The 'Customer Preview' stat button is visible if the report was signed or sent.
* In portal view of an FSM task, the button 'View details' is visible under those conditions:
- In industry_fsm: visible if there is at least one timesheet linked to the task
- In industry_fsm_sale: visible if there is at least one product linked to the task
- In industry_fsm_report: visible if there is at least one worksheet linked to the task
- In industry_fsm_sale_report: visible if there is at least one of them
* The onboarding tours have been updated accordingly.
Task link: https://www.odoo.com/web#model=project.task&id=3856383
related-https://github.com/odoo/enterprise/pull/44632
task-3856383Luxembourg payroll has been corrected and expanded to better support real payroll operations. The update adds missing payroll rules, fields, reports, and supporting data so companies can calculate Luxembourg payroll more reliably.
Original PR description
The current localisation has some errors in it and also need a lot of improvements to be considered functional. This aims to fix the previous issues and add the necessary fields, rules and reports needed for a functional localisation. Task: 4063107
The timesheet timer start and stop buttons now regain focus when appropriate, making keyboard actions more reliable. This helps users and guided onboarding flows start or stop timers consistently without disrupting typing in input fields.
Original PR description
Before this commit when we try to get the focus off the start button and stop button and tried pressing ENTER key to start or stop the timer. It works fine as it is handled by onClick.But all key press are not taken into consideration(key strokes recorded in input or text-area fields). During the step in onboarding tour of using Stop Button we are out of focus of stop_timer button as we have clicked on input field before this step. In tour every button has events both click and Enter but the target must the source of the element(given in tour trigger). After this commit the start and stop button will be in focus when no modal is displayed or the element focused is not an input and textarea. task-3997245
The rental ecommerce product editing screen now uses the updated “tags” wording instead of the older “shop” label. This keeps the rental workflow aligned with the broader website sales interface, reducing confusion for staff managing online rental products.
Original PR description
task-4011651
Rental dates and subscription plans are now carried through product combo setup so prices, availability, and displayed durations are accurate. This improves the buying and sales experience for offers that bundle rentable or subscription products.
Original PR description
- Rental start and end dates are passed to the combo configurator and to all RPCs that need them (e.g. to compute prices and available quantities), - The rental duration is displayed in the combo configurator. - The subscription plan id is passed to the combo configurator and to all RPCs that need them (e.g. to compute prices), - The billing period is displayed in the combo configurator. Community PR: https://github.com/odoo/odoo/pull/176904 task-4114589
The timesheet Kanban view no longer shows the status field on each card. This simplifies the display so users can scan timesheet entries more easily without extra visual clutter.
Original PR description
After this commit: - remove the status from kanban view of timesheets task-3996705 COM PR: odoo/odoo#170251
The rental replenishment view now uses a time horizon setting to decide how many days are considered when calculating lead times. This helps business users get more accurate replenishment timing while keeping related automated checks aligned with the new behavior.
Original PR description
In the replenishments list view, the search panel was modified to include the horizon section which controls the visibility days used to calculate correct lead times. This commit adapts test that use the old config parameter replaced by this new horizon value. task-3924995
Barcode batch transfer cards now show the description field, giving warehouse teams more context directly in the kanban view. This helps users identify and prioritize batch or wave transfers without opening each record.
Original PR description
The description field added in odoo/odoo#157869 is added to the barcode batch transfers kanban view. Task-3724421
Users can now include address details when using quick search for contacts on the map. This makes it easier to find the right contact or location when only address information is known.
Original PR description
Allow users to search contacts based on their address. Task-4187833
US payslips now include a dedicated section showing time off accrual earned, used, and remaining for the current pay period. This helps employers meet US payroll disclosure requirements and gives employees clearer visibility into their leave balances.
Original PR description
For the US, it is mandatory to have the accrual gains, usage and balance on the payslip. This adds a new table with the information for the current period. Task: 3993175
The accounting lock date wizard now shows the effective exception dates that apply to a user or to everyone, making it easier to understand which lock date is active. Exceptions are handled one lock date at a time, so they can be reviewed and revoked more precisely.
Original PR description
### commit messages #### [IMP] account: single lock date per exception We want to create 1 exception per lock date change (and not bundle multiple lock date changes in a single exception). This i.e.…
### commit messages #### [IMP] account: single lock date per exception We want to create 1 exception per lock date change (and not bundle multiple lock date changes in a single exception). This i.e. allows for more granularity when revoking exceptions. In the related community PR we changed the lock date exception model. The change to the model also allows us to (easily) remove a lock date with an exception (and not just decrease it). This commit adapts the Lock Dates Wizard to the changes #### [IMP] account: improve exception auditing A function was moved from the lock dates wizard in enterprise to the lock exception model in community. See the commit with the same title on the related community PR. #### [IMP] account_accountant: display exceptions on lock date wizard Previously we only showed the company lock date on the wizard (and a button to remove the most permissive exception in case one exists). This has some usability issues: 1) The user does not know the effective lock date (after exceptions) that applies to him 2) It can happen that nothing visibly changes when the user clicks on the "Revoke" button (in case there is another exception) After this commit we display the most permissive exception date for me and everyone (due to exceptions) if they exist (respectively) after the company lock date. For each exception there is a dedicated "Revoke" button. This fixes the aforementioned issues 1) The most permissive exception date(s) are visible directly on the wizard 2) After revoking the date will change (except if there are 2 exceptions for the same date) ### task info task-3891414 (related; lock dates rework) community PR: https://github.com/odoo/odoo/pull/180064
OSS tax reports can now use their own reporting period instead of relying on the general tax report settings, making cross-border VAT reporting more accurate. Tax closing behavior is also improved so locked company dates do not block needed entries and existing closing entries are not overwritten.
Original PR description
OSS reports may need a different periodicity than the one configured in the tax report. Another periodicity specifically for the OSS report must be present when the module is installed so that the closing can get the periodicity related to the report. This also includes a way to compute the tax closing for the OSS report as there were no tax closing for these upgrade: https://github.com/odoo/upgrade/pull/6390 task-4110459
The social app and related social channel integrations now use simpler, more consistent kanban card layouts. This makes the underlying screens easier to maintain while preserving the same day-to-day user experience.
Original PR description
\* = [social_facebook, social_crm, social_instagram, social_sale, social_twitter, social_youtube] In this commit we have simplified the kanban arch for the social and its related modules. The goal is to simplify them, make them easier to read, and use bootstrap utility classnames. - Previously, we used `kanban-box`, but now we are using `kanban-card` instead. - Deprecated `oe_kanban_global_click` and `oe_kanban_global_click_edit`. - More use of `<field/>` tags - Removed the `oe_kanban_colorpicker` class and replaced it with the `kanban_color_picker` widget. - Changed type='edit' to type='open' to open records. since version 16, records always open in edit mode by default. - `kanban_image` from rendering context, is deprecated so we use `<field name=... widget=image/>` instead Task-3992107
The manufacturing maintenance kanban views were cleaned up to use newer layout standards and simpler building blocks. This makes the screens easier to maintain while preserving the existing user experience for maintenance teams.
Original PR description
In this commit we have simplified the kanban arch for the mrp_maintenance module. The goal is to simplify them, make them easier to read, and use bootstrap utility classnames. - Previously, we used `kanban-box`, but now we are using `kanban-card` instead. - Deprecated `oe_kanban_global_click` and `oe_kanban_global_click_edit`. - More use of `<field/>` tags - Removed the `oe_kanban_colorpicker` class and replaced it with the `kanban_color_picker` widget. - Changed type='edit' to type='open' to open records. since version 16, records always open in edit mode by default. - `kanban_image` from rendering context, is deprecated so we use `<field name=... widget=image/>` instead Task-3992107
Quality teams can now access all quality spreadsheet templates from a dedicated menu in the Quality app configuration. This makes it easier to review existing templates and create new ones in one place, while related internal spreadsheet handling was streamlined.
Original PR description
This commit adds a menu in the Quality app configuration with all quality spreadsheet templates. It also allows to create new templates from there.
The push notification visitor views were simplified to use newer, standard kanban layout patterns. This makes the screens easier to maintain and helps keep the user interface consistent with current Odoo behavior.
Original PR description
In this commit we have simplified the kanban arch for the website and their related modules.the goal is to simplify them, make them easier to read and use bootstrap utility classnames. - Previously, we used kanban-box, but now we are using kanban-card instead. - Deprecated oe_kanban_global_click and oe_kanban_global_click_edit. - More use of `<field/>` tags - Removed the oe_kanban_colorpicker class and replaced it with the kanban_color_picker widget. - Changed type='edit' to type='open' to open records. since version 16, records always open in edit mode by default. - kanban_image from rendering context, is deprecated so we use <field name="..." widget="image"/> instead - kanban_color, kanban_getcolor and kanban_getcolorname are deprecated use new attribute highlight_color="color_field_name" on root node Task-3992107
The German point-of-sale certification dashboard has been cleaned up to use newer interface building blocks. This makes the screen easier to maintain and helps keep the dashboard aligned with current Odoo design standards, with little expected change for day-to-day users.
Original PR description
In this commit we have simplified the kanban arch for the point_of_sale module dashboard. the goal is to simplify them, make them easier to read and use bootstrap utility classnames. - Previously, we used kanban-box, but now we are using kanban-card instead. - Deprecated oe_kanban_global_click and oe_kanban_global_click_edit. - More use of `<field/>` tags - Removed the oe_kanban_colorpicker class and replaced it with the kanban_color_picker widget. - Changed type='edit' to type='open' to open records. since version 16, records always open in edit mode by default. - kanban_image from rendering context, is deprecated so we use `<field name=... widget=image/>` instead - kanban_color, kanban_getcolor and kanban_getcolorname are deprecated use new attribute highlight_color=color_field_name on root node Task-3992107
The Frontdesk dashboard layout was simplified to use newer, standard interface building blocks. This should make the dashboard easier to maintain while keeping the user experience consistent with modern Odoo behavior.
Original PR description
In this commit we have simplified the kanban arch for the frontedsk module dashboard. The goal is to simplify them, make them easier to read and use bootstrap utility classnames. - Previously, we used kanban-box, but now we are using kanban-card instead. - Deprecated oe_kanban_global_click and oe_kanban_global_click_edit. - More use of <field/> tags - Removed the oe_kanban_colorpicker class and replaced it with the kanban_color_picker widget. - Changed type='edit' to type='open' to open records. since version 16, records always open in edit mode by default. - kanban_image from rendering context, is deprecated so we use <field name=... widget=image/> instead - kanban_color, kanban_getcolor and kanban_getcolorname are deprecated use new attribute highlight_color=color_field_name on root node Task-3992107
Asset records now use one shared company fiscal country field instead of separate versions for Indian and Romanian reporting. This reduces duplication and makes the information available consistently for other local reporting needs.