Daily updates from Odoo
Saturday, September 14, 2024
21 changes
Enhancements to existing features
Subscription tests were updated to match recent changes in the community edition. This helps ensure subscription pricing continues to be validated correctly when sale prices are changed, reducing the risk of billing inconsistencies.
Original PR description
task-3964654
The manufacturing work order dashboard has been simplified so its cards are cleaner and easier to maintain. Users should see the same dashboard behavior with a more consistent interface that follows current Odoo standards.
Original PR description
In this commit we have simplified the kanban arch for the mrp 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 Sign app’s kanban cards have been simplified to use newer standard layouts and controls. This makes the interface easier to maintain and helps keep the signing experience consistent across desktop and mobile views.
Original PR description
In this commit we have simplified the kanban arch for the sign 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 have always been open in edit mode by default. - `kanban_image` from rendering context, is deprecated so we use `<field name=... widget=image/>` instead Task-3992107
This update simplifies how automated tests open and prepare forms across delivery, manufacturing, field service, quality, and rental workflows. It improves maintainability of the test suite without changing day-to-day product behavior for users.
HR-related kanban views were updated to use newer, cleaner card layouts and standard interface components. This makes the screens easier to maintain and keeps the employee appraisal, contract signing, payroll, and referral areas aligned with current Odoo interface practices.
Original PR description
*hr_appraisal,hr_contract_sign,hr_payroll,hr_referral In this commit we have simplified the kanban arch for the hr 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
Several Odoo apps now use simpler, more modern kanban card layouts. This makes these views easier to maintain and helps keep the user interface consistent without changing core business workflows.
Original PR description
*sale_subscription,sale_timesheet_enterprise In this commit we have simplified the kanban arch for the planning, project_forecast,quality_control,room,sale_subscription and sale_timesheet_enterprise 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
Website generation now applies style choices more consistently and avoids issues when some page information is missing. Image cropping behavior is also preserved better, helping generated pages look closer to the intended design.
Original PR description
Apply style customizations and minor fixes: - Handle case where 'page_count' is not defined. - Added missing 'cropping_dimensions' attribute. - Re-use original class attributes when replacing cropped images
Tags in rental and subscription forms now display with better spacing, alignment, and sizing. They are no longer clickable, preventing users from accidentally opening related records while reviewing orders or schedules.
Original PR description
Current Behaviour: - In some modules (subscriptions, rental, etc.), the HTML and field tags in the form view are misaligned and improperly sized, with no space between them. some of the tags are clickable and opens the form view Expected Behaviour: - Ensure proper alignment and sizing of HTML and field tags in the form view, with appropriate spacing between them. make the tags not clickable. task-3903783
The Social and Push Notifications apps now use simpler, more modern campaign card layouts. This makes the underlying views easier to maintain while preserving the same user workflow for opening and editing records.
Original PR description
In this commit we have simplified the kanban arch for the utm 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
Resolved issues and error corrections
The payroll app now installs successfully even when demo data is not included. This prevents setup failures for companies using a clean production-style installation.
Original PR description
If you install hr_payroll without demo data, a method called for a domain will crash, effectively not installing correctly the payroll app. PR related: 66873 Task: 4049872
Corrects an issue in UAE payroll where the WPS report could misread payslip data during generation. This helps ensure payroll payment reports are produced reliably and with the correct employee payslip information.
Original PR description
…PS report Ticket [#3326388](https://www.odoo.com/odoo/my-tasks/3326388) Fixing an issue while parsing the result of _get_line_values in the WPS report in UAE payroll. The returned dict was being indexed with `payslip` while it should have been `payslip.id`
The invoice extraction process now safely handles VAT numbers where no country can be identified. This helps prevent processing errors for valid VAT numbers, including Swiss cases that the underlying detection tool may not recognize.
Original PR description
The stdnum function guess_country can return an empty array if it is not able to detect a country for a vat number. This fix handles the case of no country being detected. This can happen for the Swiss vat numbers, as even though they are valid, stdnum does not check for swiss vat numbers.
Code cleanup and technical improvements
The point of sale preparation display code was updated to align with a related platform change in how sounds are handled. This is an internal cleanup that helps keep the module compatible and maintainable without introducing a noticeable workflow change for users.
Original PR description
pos*: pos_iot, pos_preparation_display In this commit we adapt the code to reflect the change in the corresponding community commit.
Miscellaneous changes
Gross should come before deductions for aesthetic purposes on the payslip Forward-Port-Of: odoo/enterprise#70063 Forward-Port-Of: odoo/enterprise#70026
Original PR description
Gross should come before deductions for aesthetic purposes on the payslip Forward-Port-Of: odoo/enterprise#70063 Forward-Port-Of: odoo/enterprise#70026
To improve customer's comprehensibility; the gantt and pivot view are added task-3999189 Forward-Port-Of: odoo/enterprise#68023
Original PR description
To improve customer's comprehensibility; the gantt and pivot view are added task-3999189 Forward-Port-Of: odoo/enterprise#68023
Description of the issue this commit addresses: When creating an invoice from the sales or the purchase app, the product names are not picked and put in the name (label) of the invoice lines linked to it. This causes several issues among which the act that the pdf of the invoice only gives the description of the product but not its name. --- Desired behavior after this commit is merged: This commit makes sure the product's display_name is always shown in the invoice line's name so th
Original PR description
Description of the issue this commit addresses: When creating an invoice from the sales or the purchase app, the product names are not picked and put in the name (label) of the invoice lines linked to it. This causes several issues among which the act that the pdf of the invoice only gives the description of the product but not its name. --- Desired behavior after this commit is merged: This commit makes sure the product's display_name is always shown in the invoice line's name so that it is rendered on the pdf. --- Community PR: https://github.com/odoo/odoo/pull/177242 opw-4119507 Forward-Port-Of: odoo/enterprise#68620
Before this commit, a queryCount was set at 3453 queries and was failing on multiple builds. This PR bump that count. Forward-Port-Of: odoo/enterprise#69489 Forward-Port-Of: odoo/enterprise#69420
Original PR description
Before this commit, a queryCount was set at 3453 queries and was failing on multiple builds. This PR bump that count. Forward-Port-Of: odoo/enterprise#69489 Forward-Port-Of: odoo/enterprise#69420
This commit adapts the Account reports's filters styling, following the fix of the record selector's caret positioning made in community. Community: https://github.com/odoo/odoo/pull/180046 Forward-Port-Of: odoo/enterprise#69994 Forward-Port-Of: odoo/enterprise#69944
Original PR description
This commit adapts the Account reports's filters styling, following the fix of the record selector's caret positioning made in community. Community: https://github.com/odoo/odoo/pull/180046 Forward-Port-Of: odoo/enterprise#69994 Forward-Port-Of: odoo/enterprise#69944
We get a KeyError when trying to format values in consolidation report Steps: - Install account_consolidation - Open a consolidation balance - Try to reformat values -> KeyError -> `blank_if_zero` and `format_params` are not in `column_dict` when we try to access it in `account_reports._format_column_values` opw-4070070 Forward-Port-Of: odoo/enterprise#67708
Original PR description
We get a KeyError when trying to format values in consolidation report Steps: - Install account_consolidation - Open a consolidation balance - Try to reformat values -> KeyError -> `blank_if_zero` and `format_params` are not in `column_dict` when we try to access it in `account_reports._format_column_values` opw-4070070 Forward-Port-Of: odoo/enterprise#67708
**[FIX] documents: skip spreadsheets while toggling preview in FileViewer** Issue: - preview any document that can be previewed. - toggle the preview to make the FileViewer preview a spreadsheet. - as the spreadsheet lacks a preview, a blank preview is seen when the FileViewer lands on the spreadsheet. Reason: - while preparing the `documentsRecords` there is actually a filter present to filter out only previewable records. please refer --- https://github.com/odoo/enterprise/
Original PR description
**[FIX] documents: skip spreadsheets while toggling preview in FileViewer** Issue: - preview any document that can be previewed. - toggle the preview to make the FileViewer preview a spreadsheet. -…
**[FIX] documents: skip spreadsheets while toggling preview in FileViewer** Issue: - preview any document that can be previewed. - toggle the preview to make the FileViewer preview a spreadsheet. - as the spreadsheet lacks a preview, a blank preview is seen when the FileViewer lands on the spreadsheet. Reason: - while preparing the `documentsRecords` there is actually a filter present to filter out only previewable records. please refer --- https://github.com/odoo/enterprise/blob/17.0/documents/static/src/views/hooks.js#L311 - but for some reason the function `[isRecordPreviewable]` is not passed as a parameter from neither the `DocumentsKanbanController` nor the `DocumentsListController` and as a result, rendered the `.filter()` useless. Fix: - We migrate the `isRecordPreviewable()` method to the `DocumentsSpreadsheetControllerMixin` so that it overrides the newly created `isRecordPreviewable()` method in the `DocumentsKanbanController`, which is then accessed by the `.filter()` mentioned above. -------------------------------------------------------------------------------------------------------------------------- **[FIX] documents: optimize the condition to save computation** Issue: - the current condition renders the `youtubeVideoToken` value useless even when the record is actually a youtube video link. - the condition `__comp__.props.record.isViewable()` does takes care of those records but I feel since we have an exclusive variable declared to check for the youtube videos link, the `isViewable()` call should be the last check to determine if any record `isViewable()` Fix: - switch the order of conditions `__comp__.props.record.isViewable()` and `youtubeVideoToken`. Task-4029257 Forward-Port-Of: odoo/enterprise#69557 Forward-Port-Of: odoo/enterprise#66248
### Steps to reproduce: - Enable packages in the inventory settings - Create a storable product tracked by Lot and put 4 units in stock: - 2 Units for "LOT001" - 2 Units for "LOT002" - Create and confirm a sale order for 2 units - Go to the barcode app > Operations > Delivery orders > your Delivery Order - Register "LOT002" manually > One unit will be added to your delivery moves. - Put in pack > You can unroll the move to see that one move line was created for 1 unit with a package a
Original PR description
### Steps to reproduce: - Enable packages in the inventory settings - Create a storable product tracked by Lot and put 4 units in stock: - 2 Units for "LOT001" - 2 Units for "LOT002" - Create and…
### Steps to reproduce: - Enable packages in the inventory settings - Create a storable product tracked by Lot and put 4 units in stock: - 2 Units for "LOT001" - 2 Units for "LOT002" - Create and confirm a sale order for 2 units - Go to the barcode app > Operations > Delivery orders > your Delivery Order - Register "LOT002" manually > One unit will be added to your delivery moves. - Put in pack > You can unroll the move to see that one move line was created for 1 unit with a package and 1 unit is still missing. - Register a second unit of "LOT002" manually to put in an other pack > The line is updated to 2 units instead of 1 so that the additional unit can not be packed in an other pack ### Expected behavior: You should be able to pack units of the same lot in different packages. ### Cause of the issue: To determine which line is going to be updated by our lot registration the `_findLine` method is called. This method look for each line in pageLines and when it finds a candidate move line it continues to find a better candidate. However, fully packed moves should not be considered as valid candidates. opw-4068334 Forward-Port-Of: odoo/enterprise#69738 Forward-Port-Of: odoo/enterprise#68535